list.append()不会向列表中添加任何值

时间:2017-06-14 07:20:20

标签: python

我想打开一个pdb文件并提取它的序列,但list.append()不会将任何对象添加到我的列表中并显示[]作为输出。我尝试了所有可能的替代方法,但这在atall上不起作用。 / p>

  file=open("c:/pdb/1ana.pdb")
  for lines in file:
      list1=lines.split()
      id=list1[0]
      list=[]
      if id=='ATOM':
          if list1[2]=='C4':
              list.append(list1[3])
 print(list)

2 个答案:

答案 0 :(得分:5)

list=[]位于for循环内,将在每次迭代中重置list

另外,避免使用list作为变量名,因为list是python中的关键字

答案 1 :(得分:0)

了解循环逻辑的工作原理非常重要。由于您在for循环中声明了一个空列表,因此每次迭代器(在您的情况下为行)迭代行时,它会将您的附加列表重置为空列表。

为避免这种情况,请在for循环之外声明list变量并将其追加到循环中。

404

干杯。