35

Python Shell で、次のように入力しました。

aList = ['a', 'b', 'c', 'd']  
for i in aList:  
    print(i)

そして得た

a  
b  
c  
d  

しかし、私が試したとき:

aList = ['a', 'b', 'c', 'd']  
aList = aList.append('e')  
for i in aList:  
    print(i) 

そして得た

Traceback (most recent call last):  
  File "<pyshell#22>", line 1, in <module>  
    for i in aList:  
TypeError: 'NoneType' object is not iterable  

誰が何が起こっているのか知っていますか?どうすれば修正/回避できますか?

4

4 に答える 4

52

list.append既存のリストを変更するメソッドです。新しいリストを返すのではなくNone、リストを変更するほとんどのメソッドと同様に を返します。単純に行うだけaList.append('e')で、リストに要素が追加されます。

于 2010-10-01T15:46:53.060 に答える
4

2行目を削除してaList = aList.append('e')のみを使用してくださいaList.append("e")。これにより、その問題が解消されます。

于 2015-01-14T21:12:00.980 に答える