i = 0
num = 0
while i <= 1000:
if i % 3 and i % 5 == 0:
num + i = num
i += 1
print num
错误:*无法分配给运算符(第5行)
解决方法:
你确定你不想要:
num = num + i
或等效地:
num += i
?
请注意,使用sum,range和生成器表达式可以更轻松地完成此操作:
sum( x for x in range(0,1000,5) if x % 3 == 0 )
#^only take every 5th element (0, 5, 10, 15 ...)
#^ Also only take elements divisible by 3
如果您计划仅在python 2.x上运行此代码,则可以在上面的表达式中将范围更改为xrange.此外,在阅读其他人的代码时,您有时会看到x%3 == 0在这种类型的上下文中是否写得好像不是x%3,但我更喜欢第一个版本(对我来说似乎更明确一些).
标签:python,variable-assignment,python-2-7
来源: https://codeday.me/bug/20190715/1469447.html