Python 是否有一种更紧凑的方法可以使用for循环附加到列表中?
我想知道在循环中是否有一种更紧凑的方式附加到列表中。例如,以下代码:Python 是否有一种更紧凑的方法可以使用for循环附加到列表中?,python,list,syntax,append,Python,List,Syntax,Append,我想知道在循环中是否有一种更紧凑的方式附加到列表中。例如,以下代码: total = 0 for integer in range(1, 101): total += integer alist = [] for integer in range(1, 101): alist.append(integer) 可压实成: total = sum(integer for integer in range(1, 101)) 因此,我的问题是,是否有类似的方法来压缩以下代码:
total = 0
for integer in range(1, 101):
total += integer
alist = []
for integer in range(1, 101):
alist.append(integer)
可压实成:
total = sum(integer for integer in range(1, 101))
因此,我的问题是,是否有类似的方法来压缩以下代码:
total = 0
for integer in range(1, 101):
total += integer
alist = []
for integer in range(1, 101):
alist.append(integer)
如果这正是您需要的,您可以创建一个没有任何循环的列表:
alist=list(范围(1101))
这正是列表理解的含义
alist = [integer for integer in range(1, 101)]
(虽然在这种情况下,萨米的答案当然更好。)是什么让萨米的答案更好?什么时候列表理解是更好的选择?