从列表中添加和检索项目

时间:2018-11-13 20:30:26

标签: python python-2.x

有人可以看看我的代码,看看有什么吗?

我是编码新手。可能很明显。因此,我想在列表中添加5个名称,然后从列表中打印第三个名称。为什么这样不起作用:

list=[]

def lol():
    return input("Give the name you want to add to the list.")

a=lol()
b=lol()
c=lol()
d=lol()
e=lol()

variables=[a,b,c,d,e]

list.append(variables)
print list[2]

1 个答案:

答案 0 :(得分:1)

您的代码存在逻辑问题

访问列表中第三位置的元素会遇到问题,因为没有元素。当您调用append()时,您传递的列表将被视为一个元素,因此它将在所有列表的第一位或位置0。

print list
[[1, 2, 3 , 4, 5]]

查看输出,您可以看到您有一个列表列表,并且位置0处只有一个元素,但是您尝试检索位置2处的元素,而python正确地回复了{ {1}}。
如果希望用IndexError: list index out of range中的每个元素填充列表,请使用此数据结构的variables方法。 否则,首先检索位置0的列表,然后以这种方式直接在其中查找:extend()

注意

请不要使用诸如list,dict等保留关键字,因为它们用于调用Python语言的某些内置函数。否则,您的代码将无法读取。