将原始输入附加到列表

时间:2014-06-20 13:02:05

标签: python list

这是最简单的练习。我只是不明白为什么它不起作用。

这是我的代码:

hobbies = []
for i in range(3):
    hobby = raw_input("Name a hobby")
    hobbies = hobbies.append(hobby)

基本上我想问我的用户3次命名他的一个爱好,并将它们存储在一个列表中。但由于某种原因,我收到了这个错误,

Traceback (most recent call last):
  File "C:/Python27/hobbies.py", line 4, in <module>
    hobbies = hobbies.append(hobby)
AttributeError: 'NoneType' object has no attribute 'append'

我真的不明白。

2 个答案:

答案 0 :(得分:3)

问题是append()会就地更改列表。当你调用这个函数时,不会返回任何值。

第一次获得变量None的{​​{1}}值。您第二次尝试为hobbies值调用append()方法...

答案 1 :(得分:0)

您不应该使用hobbies = hobbies.append()。而是仅使用hobbies.append()