为什么我的简单python列表在for循环中被重置为None?

为什么我的简单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的第一次迭代中,列表应该已经初始化,然后追

我在一个大型程序中遇到了一个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的第一次迭代中,列表应该已经初始化,然后追加。但是,我得到了一个错误:

   flist=flist.append('s')
 AttributeError: 'NoneType' object has no attribute 'append'

我使用的是Python2.7

列表的返回值。append是
None
。Python将元素直接添加到调用它的list对象中。您只需调用函数,而不指定其返回值:

flist.append('s')