擅长:python、mysql、java
<p>问题是append to list,它返回None,如果你这样做,你会得到答案</p>
<pre><code>def extractnum(s):
x = s.readlines()
x.pop() #To remove last line which is empty
y = [ i.split() for i in x ]
z = [ j[2] for j in y ] #z is the list that contains the residue and chain information
n = [int(k.split('.')[0]) for k in z]
a_chain_residues = ''
ca_a_chain_residues = ''
list_of_a_chain_residues = [ ]
for i in list(set(z)): #list(set(z)) gives a list that removes all the duplicate items in z: it doesn't change z
if i[-1] == 'A':
a_chain_residues = a_chain_residues + i +','
ca_a_chain_residues = ca_a_chain_residues + i + '.ca,'
list_of_a_chain_residues = list_of_a_chain_residues + list(i)
print list_of_a_chain_residues
s = open("./file1.txt",'r')
extractnum(s)
</code></pre>