我无法弄清楚为什么我得到一个无限循环?我无法弄清楚为什么我得到一个无限循环在Python
下面的代码:
# LAB - FIND SUM OF NUMBERS 1-10, 20-37, 35-89
sum = 0
i = 0
sum += i
for i in range(1,11):
print('sum from 1-10 is ' ,sum)
我无法弄清楚为什么我得到一个无限循环?我无法弄清楚为什么我得到一个无限循环在Python
下面的代码:
# LAB - FIND SUM OF NUMBERS 1-10, 20-37, 35-89
sum = 0
i = 0
sum += i
for i in range(1,11):
print('sum from 1-10 is ' ,sum)
你得到循环错误。
这里的1到10之间的相加数的Python的方式:
sum(range(11))
sum(range(20,38))
sum(range(35,90))
编辑:根据@bereal和@ l4mpi评论
下面是实现同样的少Python的方式:
mysum = 0
for i in range(1,11):
mysum += i
print mysum
这会做你想做的事:
mysum = 0
for i in range(1,11):
mysum += i
print('sum from 1-10 is ' ,mysum)
也是可能的:
mysum = sum(range(11))
print('sum from 1-10 is ' , mysum)
您不应该覆盖内置的['sum'](https://docs.python.org/3/library/functions.html#sum)。 – Matthias 2014-10-02 09:29:03
@Matthias你是对的。编辑 – nouseforname 2014-10-02 10:02:13
你没有得到无限循环,但你的代码根本就没有做它应该。 – Maroun 2014-10-02 09:13:01
你总结添加是在循环之外,但必须在 – nouseforname 2014-10-02 09:14:25
你怎么决定什么范围总结?你的家庭作业有3个范围。 – JonB 2014-10-02 09:25:39