Rosalind-001:统计核苷酸数目(Counting DNA Nucleotides)

本文介绍了一种使用Python统计DNA序列中四种碱基(A、C、G、T)数量的方法。通过读取文本文件中的DNA序列,并利用Python内置的字符串方法进行计数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:

统计核苷酸数目(Counting DNA Nucleotides)

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

所给:一条被命名为ss的DNA链,长度至少为1000个碱基。

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

需得:四个以空格分隔的整数,分别为ss中A、C、G、T的数量。

测试数据

AGCTTTTCATTCTGACTGCAACGGGCAATATGTCTCTGTGTGGATTAAAAAAAGAGTGTCTGATAGCAGC

测试输出

20 12 17 21

生物背景

细胞是生命活动的主要承担者,早在一百多年前,人们就意识到细胞核在调节细胞生命活动中起着中心作用。细胞核中充满着被称为染色质(分裂期凝缩为染色体)的生物大分子,核酸是染色质的重要组成部分,由单体核苷酸聚合形成。核苷酸又由五碳糖、核酸基团和碱基组成。对DNA分子来说,碱基有四种,分别为腺嘌呤(adenine,A)、鸟嘌呤(guanine,G)、胞嘧啶(cytosine,C)和胸腺嘧啶(thymine,T)。遗传信息就包含在碱基序列中。

Python知识点

DNA序列是一个字符串,Python中针对字符串提供了大量方法可直接调用,其中“.count()”方法可用于计数。

将文件保存在与.py文件相同的路径下可以很方便地读入和编辑,参数’r’代表读入;’a’代表添加到文件已有内容之后;’w’代表写入文件,覆盖原有内容。

准备:要在相对路径下创建一个rosalind_dna.txt文件,把测试数据存进去
代码:

#s="AGCTTTTCATTCTGACTGCAACGGGCAATATGTCTCTGTGTGGATTAAAAAAAGAGTGTCTGATAGCAGC"

f = open('rosalind_dna.txt','r')#直接读入序列文件
s=f.read()
print("%d %d %d %d" %(s.count('A'),s.count('C'),s.count('G'),s.count('T')))

作者:wshjlxt
https://www.bilibili.com/read/cv1977551
出处: bilibili

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值