搜索
查看: 4040|回复: 4

Python小测003

[复制链接]

8

主题

26

帖子

157

积分

注册会员

Rank: 2

积分
157
发表于 2017-11-5 21:33:47 | 显示全部楼层 |阅读模式
A与T配对,C与G配对。统计一段DNA序列中AT或者TA的数量之和(CG或者GC之和)?
例如:
dna = "GATGGAACTTGACTACGTAAATT"
结果:
AT与TA之和:4
CG与GC之和:1


回复

使用道具 举报

8

主题

26

帖子

157

积分

注册会员

Rank: 2

积分
157
 楼主| 发表于 2017-11-5 21:34:15 | 显示全部楼层
dna = "GATGGAACTTGACTACGTAAATT"
a = int(len(dna))
lists1 = []
for i in range(a-1):
    #print(dna[i:i+2])
    lists1.append(dna[i:i+2])
print(lists1.count('AT')+lists1.count("TA"))
print(lists1.count('CG')+lists1.count("GC"))
回复 支持 反对

使用道具 举报

0

主题

19

帖子

74

积分

注册会员

Rank: 2

积分
74
发表于 2020-6-4 09:04:39 | 显示全部楼层
import re
dna = "GATGGAACTTGACTACGTAAATT"
at = re.findall(('AT|TA') , dna)
at_num = len(at)
gc = re.findall(('GC|CG'), dna)
gc_num = len(gc)
print(at_num, gc_num)
回复 支持 反对

使用道具 举报

0

主题

10

帖子

52

积分

注册会员

Rank: 2

积分
52
发表于 2021-2-4 14:16:51 | 显示全部楼层
def main():
    dna = 'GATGGAACTTGACTACGTAAATT'

    print('AT & TA sum: {}'.format(dna.count('AT') + dna.count('TA')))
    print('CG & GC sum: {}'.format(dna.count('CG') + dna.count('GC')))


if __name__ == '__main__':
    main()
回复 支持 反对

使用道具 举报

0

主题

2

帖子

28

积分

新手上路

Rank: 1

积分
28
发表于 2021-6-11 09:48:20 | 显示全部楼层
import re
ada = 'GATGGAACTTGACTACGTAAATT'
pattern = r'AT|TA'
find = re.findall(pattern,ada)
print(len(find))
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树 ( 粤ICP备15016384号  

GMT+8, 2021-9-21 12:59 , Processed in 0.110500 second(s), 33 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.