【发布时间】:2021-12-02 09:51:40
【问题描述】:
我正在尝试从平方的列表中找到数字的总和。
x_sequence = [1, 2, 3, 4, 5]
total = 0
for i in x_sequence:
total = total + (i * i)
if i % 5 == 0:
continue
print(total)
output: 30
这首先很简单,它可以正常工作并打印出正方形(1+2+3+4)的 30,但是如果我尝试仅从 for 循环中打印出最终数字,它会打印出 55 而不是 30 像这样:
x_sequence = [1, 2, 3, 4, 5]
total = 0
for i in x_sequence:
total = total + (i * i)
if i % 5 == 0:
continue
print(total)
output: 55
我想知道为什么会这样?我试图用我喜欢的方式替换总数:i = i + (i * i),但如果我从列表中删除 3 或 4,它会给我 30,我不想这样做。
我想实现这个:对列表中的所有数字求平方,求列表数字的平方和,如果有一个平方数除以5后给出0提示跳过它
【问题讨论】:
-
由于第一个 code-sn-p 在循环内打印,你应该得到相当多的输出,只有你声称的单个
30。
标签: python python-3.x list