繁体   English   中英

Python:如何将for循环的结果合并为一个输出?

[英]Python: How to combine the results of for loop into one output?

numbers = [1, 2, 3]

for number in numbers:
   number = number * 2 

#For the output I will get:
2
4
6

如何修改代码,以便不使用print语句就可以合并结果(例如[2,4,6])?

使用列表理解:

[num*2 for num in numbers]

>>> numbers = [1, 2, 3]
>>> [num*2 for num in numbers]
[2, 4, 6]
>>> 

创建新的List类型变量result并通过list append()方法向其中添加值。

演示:

>>> numbers = [1, 2, 3]
>>> result = []
>>> for i in numbers:
...   result.append(i*2)
... 
>>> result
[2, 4, 6]
>>> 

如果要将结果收集到一个列表中,只需创建一个列表append每个列表append到列表上:

numbers = [1, 2, 3]
doubles = []
for number in numbers:
    double = number * 2 
    doubles.append(double)

…或更紧凑地说,使用列表理解来做同样的事情:

numbers = [1, 2, 3]
doubles = [number * 2 for number in numbers]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM