首页 > 其他 > 详细

01 A Counting DNA Nucleotides

时间:2017-07-29 14:57:39      阅读:205      评论:0      收藏:0      [点我收藏+]

Problem

string is simply an ordered collection of symbols selected from some alphabet and formed into a word; the length of a string is the number of symbols that it contains.

An example of a length 21 DNA string (whose alphabet contains the symbols ‘A‘, ‘C‘, ‘G‘, and ‘T‘) is "ATGCTTCAGAAAGGTCTTACG."

Given: A DNA string ss of length at most 1000 nt.

Return: Four integers (separated by spaces) counting the respective number of times that the symbols ‘A‘, ‘C‘, ‘G‘, and ‘T‘ occur in ss.

Sample Dataset

AGCTTTTCATTCTGACTGCAACGGGCAATATGTCTCTGTGTGGATTAAAAAAAGAGTGTCTGATAGCAGC

Sample Output

20 12 17 21

方法一:
f = ‘AGCTTTTCATTCTGACTGCAACGGGCAATATGTCTCTGTGTGGATTAAAAAAAGAGTGTCTGATAGCAGC‘
for i in f:
    b = list(f)    # 把‘AAA’变成 [‘A‘,‘A‘‘,A‘]
    c = {}          
    for i in b:
        c[i] = b.count(i)   # 把key 和value 写入字典,如 A:1
print (c.values())  # 最后的结果为 [20,12,21,17]

  方法二:

f = ‘AGCTTTTCATTCTGACTGCAACGGGCAATATGTCTCTGTGTGGATTAAAAAAAGAGTGTCTGATAGCAGC‘
counts = []
for i in [‘A‘,‘C‘,‘G‘,‘T‘]:          # 把输出的顺序定好
    counts.append(f.count(i))
print (‘\t‘.join(map(str, counts)))  #map() 这里的意思是吧输出的[20,12,17,21]变为 20 12 17 21

  






01 A Counting DNA Nucleotides

原文:http://www.cnblogs.com/think-and-do/p/7255650.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!