i = 0
num = 0
while i <= 1000:
if i % 3 and i % 5 == 0:
num + i = num <--- Adding Up Numbers Divisable by 3 & 5...
i += 1
print num
错误:*无法分配给操作员(第 5 行)
i = 0
num = 0
while i <= 1000:
if i % 3 and i % 5 == 0:
num + i = num <--- Adding Up Numbers Divisable by 3 & 5...
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 上运行此代码,则可以更改range
为xrange
上述表达式。此外,在阅读其他人的代码时,您有时会看到在这种类型的上下文中if x % 3 == 0
编写if not x % 3
,但我更喜欢第一个版本(对我来说似乎更明确一点)。
num + i = num <--- Adding Up Numbers Divisable by 3 & 5...
您不能为表达式赋值。
另外,为什么不每次加 5 并检查它是否能被 3 整除?你已经知道它可以被5整除...