`i = 0
while i < 5
i=i+1
li = []
li.insert(i,input('>>>'))
print(li)`
运行此程序时。它仅打印我的最后输入。 请帮助。 我要一一添加所有输入内容...
答案 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)
看到一行可以创建您想要的列表