擅长:python、mysql、java
<p>在第一个for循环中,将txt文件转换为python字典时,将丢失信息:</p>
<pre><code>for ...:
dictA[listA[1]] = listA[0]
</code></pre>
<p>例如,如果你有线条</p>
^{pr2}$
<p>在您的txt文件中,生成的字典将只有最后一个条目的键值对,颠倒。在</p>
<p>为了实现您的目标,只需对程序进行最少的修改,请尝试</p>
<pre><code>from collections import defaultdict
f1=open('mydict.txt','r')
f2=open('mylist.txt','r')
output = open('result.txt','w')
dictA= defaultdict(list)
for line1 in f1:
listA = line1.rstrip('\r\n').split('\t')
dictA[listA[1]].append(listA[0]) # Save all the common proteins
for line1 in f2:
new_list=line1.rstrip('\n').split()
query=new_list[0]
if query in dictA:
listA = dictA[query] # Now have a list of matching contigs
for contig in listA:
output.write(contig + '\t' + query +'\n')
</code></pre>