他/她想要添加多少个值,然后他使用循环插入值。
我使用这个循环进行排序:
value = int(input("how many number u want to add"))
arr = [value]
for n in range(0, value):
arr[value] = input("Enter value")
for n in range(0, value):
print(arr[value])
显示错误:
arr[value] = input("Enter value")
IndexError: list assignment index out of range
最佳答案
如果您认为 arr = [value]
会创建一个长度为 value
的数组,那您就错了,它只是创建了一个只有一个元素的列表,value
,如果你想创建一个有value
长度的列表,你可以使用列表乘法:
value = int(input("how many number u want to add"))
arr = [0] * value
for n in range(value):
arr[n] = input("Enter value")
for n in arr: # iterate over the elements directly, rather than indexing
print(n)
另一种方法是使用 list.append
动态添加元素到列表中:
value = int(input("how many number u want to add"))
arr = []
for n in range(value):
arr.append(input("Enter value"))
for n in arr:
print(n)
关于python - 尝试在 for 循环中从用户列表中插入值会引发 IndexError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57910736/