你能一直在列表中添加东西直到某一点吗?

2024-05-28 20:49:05 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我想在列表中添加所有项目。其中一个问题是,这个列表可能会永远持续下去。下面是一个例子:

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命令,但我不知道这是否可行。任何简化代码或帮助我解决实际问题的想法都将不胜感激。顺便说一下,这是一个平均值计算器


Tags: 项目you列表inputitemsitemdomany
1条回答
网友
1楼 · 发布于 2024-05-28 20:49:05

要添加列表中的所有项目,只需使用sum方法,如下所示:

lst = [1,2,3]
print(sum(lst))

输出:

6

但不必将所有输入添加到列表中,您可以得到一个运行总数,如下所示:

total = 0
for a in range(ItemsInList):
    Item = int(input("What should item", a, "be? "))
    total += Item

这将比您当前使用的代码运行得更快

除此之外,您的代码中还有许多缺陷,如:

  1. a+1。您没有将结果值赋给a,因此循环将是无限的。它应该是a += 1a = a+1

  2. 当您知道要执行循环多少次时,使用while循环

  3. lst = [int(0)]。这没有错,但这也不是初始化列表的正确方法。您可以这样做:lst = []

确保不要重复这些错误!希望这有帮助

相关问题 更多 >

    热门问题