我可以在某些条件下在for循环中使用print元素吗?
其实我有这段代码:
sum = 0
for i in range(1,1000):
if i%3 == 0 or i%5 == 0 :
sum+=i
print(sum)
Run Code Online (Sandbox Code Playgroud)
我想在一行代码中转换它.任何帮助将不胜感激.
您可以使用生成器表达式:
print(sum(i for i in range(1,1000) if i%3 == 0 or i%5 == 0))
Run Code Online (Sandbox Code Playgroud)
请注意,我在sum()这里使用的是内置函数,它与变量不同sum(通常不应该使用它作为名称,因为它会影响内置函数).