问题描述
|
我需要其他python代码,这些代码将对下面输出的左列进行编号,就像我在右列中所示:此处的代码只是将序列分为3s。
现在,我要像在右栏中手动完成的那样,将它们从1编号到最后一个。
cds = \"atgagtgaacgtctgagcattaccccgctggggccgtatatcggcgcacaataa\"
for i in range(0,len(cds),3):
print cds[i:i+3],...
Atg 1
Agt 2
Gaa 3
Cgt 4
Ctg 5
Agc 6
Att 7
Acc 8
Ccg 9
Ctg 10
Ggg 11
Ccg 12
Tat 13
Atc 14
Ggc 15
Gca 16
Caa 17
Taa 18
Taa 19
解决方法
cds = \"atgagtgaacgtctgagcattaccccgctggggccgtatatcggcgcacaataa\"
for num,i in enumerate(range(0,len(cds),3)):
print cds[i:i+3],num + 1
, 不确定这是您想要的,但是:
cds = \"atgagtgaacgtctgagcattaccccgctggggccgtatatcggcgcacaataa\"
for data in ((i+1,cds[i:i+3],i+1) for i in xrange(0,3)):
#do something
print data
, 在这里您可能会读到这种方式
>>> cds = \"atgagtgaacgtctgagcattaccccgctggggccgtatatcggcgcacaataa\"
>>> for ind,val in enumerate(range(0,3),start=1):
... print cds[val:val+3].capitalize(),ind
...
Atg 1
Agt 2
Gaa 3
Cgt 4
Ctg 5
Agc 6
Att 7
Acc 8
Ccg 9
Ctg 10
Ggg 11
Ccg 12
Tat 13
Atc 14
Ggc 15
Gca 16
Caa 17
Taa 18
>>>
, for item in map(lambda x,y,z: [z[0]+1,\"\".join([x,z[1]])],list(cds)[::3],list(cds)[1::3],enumerate(list(cds)[2::3])):
print item[1].capitalize(),item[0]