假设我想在列表中添加所有项目。其中一个问题是,这个列表可能会永远持续下去。下面是一个例子:
a = 0
lst = [int(0)]
ItemsInList = int(input("How many items do you want in this list? "))
while a != ItemsInList:
a + 1
Item = int(input("What should item", a, "be? "))
lst.append(Item)
现在我想把所有这些加起来。我不能打印(lst[0]+lst[1]+lst[2]+lst[3]等等),因为如果我这样做,并且列表中有更多的项目,那么3我就不会添加整个列表。如果我一次又一次地这样做,直到它达到lst[500]为止我会得到一个错误,因为该项在大多数情况下可能不存在。我正在考虑在print()中生成一个while命令,但我不知道这是否可行。任何简化代码或帮助我解决实际问题的想法都将不胜感激。顺便说一下,这是一个平均值计算器
要添加列表中的所有项目,只需使用
sum
方法,如下所示:输出:
但不必将所有输入添加到列表中,您可以得到一个运行总数,如下所示:
这将比您当前使用的代码运行得更快
除此之外,您的代码中还有许多缺陷,如:
a+1
。您没有将结果值赋给a
,因此循环将是无限的。它应该是a += 1
或a = a+1
当您知道要执行循环多少次时,使用
while
循环lst = [int(0)]
。这没有错,但这也不是初始化列表的正确方法。您可以这样做:lst = []
确保不要重复这些错误!希望这有帮助
相关问题 更多 >
编程相关推荐