从原始输入附加到列表

Dud*_*ude 1 python

为什么这会打印出列表[None, None, None]而不是列出我输入的三个答案?

options = []

for i in range(3):
    options[i] = options.append(raw_input("enter an option"))

print options
Run Code Online (Sandbox Code Playgroud)

Ana*_*mar 7

因为它list.append是一个就地方法,它不返回任何东西,因此它返回None,这是你设置options[i]的.示例 -

>>> lst = [1]
>>> print(lst.append(2))
None
Run Code Online (Sandbox Code Playgroud)

None在上面的情况下打印,因为这是由返回lst.append().

你不需要options[i] =.代码 -

for i in range(3):
    options.append(raw_input("enter an option"))
Run Code Online (Sandbox Code Playgroud)