前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >生物信息学算法之Python实现|Rosalind刷题笔记:002 中心法则:转录

生物信息学算法之Python实现|Rosalind刷题笔记:002 中心法则:转录

作者头像
简说基因
发布2020-12-14 14:09:03
4970
发布2020-12-14 14:09:03
举报
文章被收录于专栏:简说基因简说基因

我在生物信息学:全景一文中,阐述了生物信息学的应用领域非常广泛。但是有一点是很关键的,就是细胞内的生命活动都遵从中心法则,生物信息学很多时候就是在中心法则上做文章:

  • 分子生物学中心法则:DNA --> RNA --> 蛋白质 --> 细胞表型
  • 基因组中心法则:基因组 --> 转录组 --> 蛋白质组 --> 细胞表型

如何用计算机语言描述生物大分子,以及它们之间如何相互转换,是首先要面对的问题。

问题描述

遗传信息从 DNA 流向 RNA 的过程,称为转录。DNA 有 4 张不同的扑克牌,RNA 也有 4 张,唯一的区别是 DNA 中的 T,在 RNA 中变成了 U,因此 RNA 的 4 张牌是:A、U、C、G。因此,给定一条与编码链相同的 DNA 序列,要转录成 RNA 只需要将 T 替换成 U 就可以了。

给定:一条长度至多 1000bp 的 DNA 序列。

应得:其转录的 RNA 序列。

示例数据

代码语言:javascript
复制
GATGGAACTTGACTACGTAAATT

示例结果

代码语言:javascript
复制
GAUGGAACUUGACUACGUAAAUU

Python 实现

Transcribing_DNA_into_RNA.py

代码语言:javascript
复制
import sys

def transcript(dna):
    return dna.upper().replace('T', 'U')

def test():
    dna  = 'GATGGAACTTGACTACGTAAATT'
    return transcript(dna) == 'GAUGGAACUUGACUACGUAAAUU'

if __name__ == '__main__':
    if not test():
        print("transcript: Failed")
        sys.exit(1)

    with open('rosalind_rna.txt') as fh:
        dna = fh.read()
        rna = transcript(dna)
        print(rna)
  • 只需要将T替换成U就可以了;替换前先用 upper()是为了提高程序的健壮性,使得输入序列中含有小写字母时也能转换成功。

Problem

An RNA string is a string formed from the alphabet containing 'A', 'C', 'G', and 'U'.

Given a DNA string corresponding to a coding strand, its transcribed RNA string is formed by replacing all occurrences of 'T' in with 'U' in .

Given: A DNA string having length at most 1000 nt.

Return: The transcribed RNA string of .

Sample Dataset

代码语言:javascript
复制
GATGGAACTTGACTACGTAAATT

Sample Output

代码语言:javascript
复制
GAUGGAACUUGACUACGUAAAUU
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-12-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 简说基因 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题描述
  • 示例数据
  • 示例结果
  • Python 实现
  • Problem
  • Sample Dataset
  • Sample Output
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档