我无法在python列表中添加input()

时间:2019-03-03 17:03:36

标签: python

`i = 0
while i < 5
    i=i+1
    li = []
    li.insert(i,input('>>>'))
print(li)`

运行此程序时。它仅打印我的最后输入。 请帮助。   我要一一添加所有输入内容...

3 个答案:

答案 0 :(得分:2)

尝试一下:

li = []
i = 0
while i < 5:
    i=i+1    
    li.insert(i,input('>>>'))
print(li)

如果要将数字存储为整数,请尝试以下操作:

li = []
i = 0
while i < 5:
    i=i+1    
    li.insert(i,int(input('>>>')))
print(li)

答案 1 :(得分:1)

请勿在每个循环中将您的列表重置为空白列表[]

您可以使用range而不是自己控制索引。

此外,使用append将一项添加到列表中。

因此,您的代码可能变为:

li = []
for i in range(5):
    li.append(input('>>>'))

print(li)

答案 2 :(得分:0)

将列表理解用于语法糖。同样,要重申其他人的发言,您会在每次迭代时重置列表。第二,input()是一个返回原始输入(通常解释为字符串)的函数,因此您需要控制其类型返回或使用Regex来确保只提取特定的答案(真正限制输入是一种好习惯)。最后,当您遍历一个段时,将其作为用于内存目的的生成器函数可能更容易实现-查看yield和生成函数。

newList = [int(input(‘>>>’)) for x in range(1,5)]

打印(newList)

看到一行可以创建您想要的列表