【发布时间】:2016-09-22 23:44:14
【问题描述】:
我不知道为什么我不能在列表理解中使用 *= 运算符,而在 for 循环中使用它可以吗?
def funcLC(l):
ans = 1
[ans *= x for x in l if x < 0]
return ans
SyntaxError: invalid syntax
def funcFor(l):
ans = 1
for x in l:
if x < 0:
start *= x
return ans
【问题讨论】:
-
列表推导式不仅仅是孩子们编写循环的酷炫方式。它们用于构建列表。如果您不尝试构建列表,则列表推导不是这项工作的工具。
-
我以前不知道,现在知道了,非常感谢。