属性 | 说明 |
---|---|
len(a) | 字典a中的元素数量 |
a[key]=value | 设置a[key]的值为value |
del a[key] | 从a中移除a[key] |
key in a | 若a有个键为key,返回Ture,反则False |
这里更详细。
Python官方文档中文翻译
Python v2.7.8 中文文档
import itertools
fileFa = open("GCF_000142945.1_ASM14294v1_protein.faa", "r")
dic, k, v = {}, '', []
g = open('noBio_output.txt','w')
for i in fileFa:
if i.startswith('>'):
dic[k] = v
k = i[1:15]
v=[]
else:
v.append(i)
dic[k] = v
for (k,v) in dic.items():
s = ''.join(itertools.chain(*v))
g.write(k+' '+str(len(s.replace('\n','')))+'\n')
g.close()
对序列长度和名字提取之后往往是无序的,可以从以下代码来排序
dict=sorted(dic.iteritems(),key=lambda d:d[1])
#其中d:d[1]表示按照键值来排序,reverse=Ture为降序,默认为False