我想在Python上创建一个程序,每次计数将增加5,直到count为20,所以总数为100.所以基本上我想用这种方式显示5 * 20的结果。
num = 5
count = 0
total = 0
我尝试了这段代码,但它返回零。为什么呢?
while(count == 20):
total = num * count
if(total == num * count):
count = count + 1
print total
请修正我犯的任何错误。我是Python的新手......
答案 0 :(得分:4)
while count <= 20:
为while循环指定的条件是保持运行所必需的条件 - 而不是它何时结束。
另请注意,while
和if
条件不需要括号。
例如:
total = num * count
if total == num * count:
count = count + 1
if
语句将始终为真,因为您在上一行中将总计设置为与其相同的内容。换句话说,你刚刚写完......
total = num * count
if True:
count = count + 1
甚至只是......
total = num * count
count = count + 1
您在每次迭代时将total
设置为num * count
,但如果您的目标只是打印num * 20
,则不必计算最多20个 - 您可以从20岁开始。
num = 5
count = 20
print num * count
这条线可以更简洁地说明:
count = count + 1
也可以写成......
count += 1
如果你真正想要的是一个数字列表,增量为5到100,你可以这样做:
>>> range(0, 101, 5)
[0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100]
或者这个:
>>> [n*5 for n in range(21)]
[0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100]