我正在尝试创建一个可以容纳用户输入的字符串的python数组。我试图在循环中实现它,如下所示:
(Loop:)
Enter the string:
array[1] = (string entered by user)
Enter the next string:
array[2] = (second string entered by user)
....
Enter the nth string:
array[n] = (nth string entered by user)
我怎样才能做到这一点?我听说过动态数组和列表以及内容,但我无法弄明白。
提前谢谢。
答案 0 :(得分:4)
Python中的默认列表是动态数组。您可以使用以下命令对其进行初始化:
data = []
并使用:
data.append(item)
在最后添加一个元素。
例如:
data = []
while True:
print('Enter the string:')
data.append(input())
这将一直持续到机器的所有内存耗尽为止。
您还可以指定一种停止询问用户更多数据的方法。例如,如果用户输入'-1'
,您可以说循环应该停止:
data = []
while True:
print('Enter the string:')
the_input = input()
if the_input == '-1':
break
data.append(the_input)
#do something with the collected data
现在,如果您运行此代码:代码将查询输入,直到您输入-1
(我认为如何更改停用词很明显)。然后data
包含之前输入的所有数据,您可以以某种方式处理它。
答案 1 :(得分:1)
答案 2 :(得分:0)
如果要添加到列表,请使用追加
data = []
data.append('whatever')
您还没有询问如何获取输入,因此我假设您可以这样做。 请记住,您的计算机不会有无限的存储空间 - 如果您在循环中执行此操作,您将在某些时候耗尽内存。