为什么我的简单python列表在for循环中被重置为None?
我在一个大型程序中遇到了一个bug,我设法将它隔离到一个更简单的问题中。我正在尝试附加一个列表为什么我的简单python列表在for循环中被重置为None?,python,Python,我在一个大型程序中遇到了一个bug,我设法将它隔离到一个更简单的问题中。我正在尝试附加一个列表 kk=0 flist=[] for key in range(5): if kk==0: flist=['w'] else: print "flist*x*", flist flist=flist.append('s') kk=kk+1 换句话说,在kk=0的第一次迭代中,列表应该已经初始化,然后追
kk=0
flist=[]
for key in range(5):
if kk==0:
flist=['w']
else:
print "flist*x*", flist
flist=flist.append('s')
kk=kk+1
换句话说,在kk=0的第一次迭代中,列表应该已经初始化,然后追加。但是,我得到了一个错误:
flist=flist.append('s')
AttributeError: 'NoneType' object has no attribute 'append'
我使用的是Python2.7列表的返回值。append是
None
。Python将元素直接添加到调用它的list对象中。您只需调用函数,而不指定其返回值:
flist.append('s')