Hyp*_*ant 3 python indexing list range
让我们说我想创建一个名单列表
listOfNames = []
Run Code Online (Sandbox Code Playgroud)
然后我有一个while循环,如
count = 0
while listOfNames[count] < 10:
nameList[count] = raw_input("Enter a name: ")
count += 1
Run Code Online (Sandbox Code Playgroud)
Python说列表索引超出范围,但列表索引应该为0,对吗?
每次运行while循环时如何添加到列表中?我假设列表分配有问题.
Vin*_*ard 11
空列表还没有任何索引,它是一个空列表!如果你想填补它,你必须做这样的事情:
while count < 10:
nameList.append(raw_input("Enter a name: "))
count += 1
Run Code Online (Sandbox Code Playgroud)
这样,您的条件将被评估,并且使用append方法,您将能够在列表中添加新项目.
有一些高级技巧可以很容易地做到这一点,但考虑到你的水平,我认为你在继续之前理解这些代码会更好.
最惯用的是使用列表理解:
namelist = [raw_input("Enter a name: ") for i in range(10)]
Run Code Online (Sandbox Code Playgroud)
(或_用于i,虽然我个人不会)
这具有即时创建列表的优点,同时不必使用append()方法和显式索引.