Python基础-生物信息:找出基因,生物学家使用字母A、C、T和G构成的字符串建模一个基因组。

生物信息:找出基因,生物学家使用字母A、C、T和G构成的字符串建模一个基因组。
一个基因是基因组的子串,它从三元组ATG后开始在三元组TAG、TAA或TGA之前结束。
此外,基因字符串的长度是3的倍数,而且基因不包含三元组ATG、TAG、TAA和TGA。
编写程序提示用户输入一个基因组,然后显示基因组里的所有基因。
如果在输入序列中没有找到基因,那么程序显示“no gene is found”

s=input(‘Please input the Gene String:\r\n‘)
endsplit=[‘TAG‘,‘TAA‘,‘TGA‘]
if ‘ATG‘ in s:
    for i in s.split(‘ATG‘):
        for j in endsplit:
            if j in i:
                print(i.split(j)[0], end=‘\t‘)
else:
    print(‘no gene is found‘)

原文地址:https://www.cnblogs.com/Python-XiaCaiP/p/11747834.html

时间: 2024-10-29 19:10:20

Python基础-生物信息:找出基因,生物学家使用字母A、C、T和G构成的字符串建模一个基因组。的相关文章

[Python Tips]如何找出Python list中有重复的项

如果一个Python list中有很多重复的项,如何有效地找到多少重复的项呢? 可以使用collection的Counter方法.. >>> from collections import Counter >>> Counter([11,22,11,44,22,33]) Counter({11: 2, 22: 2, 33: 1, 44: 1}) [Python Tips]如何找出Python list中有重复的项,布布扣,bubuko.com

给定一个set字符和一个正数k,找出所有该做set它可以由长度构成k该字符串集合 print-all-combinations-of-given-length

// 给定一个set字符和一个正数k,找出所有该做set它可以由长度构成k该字符串集合 /* Input: set[] = {'a', 'b'}, k = 3 Output: aaa aab aba abb baa bab bba bbb Input: set[] = {'a', 'b', 'c', 'd'}, k = 1 Output: a b c d package recursion; import java.util.ArrayList; public class N_sets_form

找出2个数组相同的项,并将其保存在另外一个数组中

#include <stdio.h> //找出2个数组相同的项,并将其保存在另外一个数组中 int main(){ int buf1[]={1,2,3}; int buf2[]={2,3,4}; int des[3]; int count=0; for(int i=0;i<sizeof(buf1)/sizeof(int);i++) //遍历buf1 { for(int j=0;j<sizeof(buf2)/sizeof(int);j++) //遍历buf2 { if(buf1[i]

用python实现:找出1到101 之间的质数

#coding=utf-8 for i in range(2,101): j = 2 while(i%j != 0): j +=1 if j == i: print(i)

找出词频最高的字母

题目: 给你一个其中包含不同的英文字母和标点符号的文本,你要找到其中出现最多的字母,返回的字母必须是小写形式,当检查最想要的字母时,不区分大小写,所以在你的搜索中 "A" == "a". 请确保你不计算标点符号,数字和空格,只计算字母. 如果你找到 两个或两个以上的具有相同的频率的字母, 返回那个先出现在字母表中的字母. 例如"one"包含"o","n","e"每个字母一次,因此我们选择

数组a[n]中存放1-n中的n-1个数,给出算法找出重复的那一个数

问题描述: 数组a[n]中存放1-n中的n-1个数,给出算法找出重复的那一个数. 算法一: 对数组a[n]进行冒泡排序,如果冒泡所得的最值和前一个最值相等,则该最值为重复的数. 分析: 该算法时间复杂度最坏的情况为O(n的2次方),在空间开销上只需要一个额外的交换空间. 如何将时间开销减小呢?下面给出另外一种算法 算法二: 给定另外一个数组b[n],将a[n]中的数作为数组b的索引,然后遍历b[n],如果未访问过,则标记:如果已经访问过,则该索引就为重复的数. 分析: 该算法时间复杂度能够达到最

[Python3 练习] 010 找出字符串中特定的字符

题目:找出藏在字符串中的"密码" (1) 描述 1) 题源1 鱼 C 论坛中"小甲鱼"老师出的题 链接地址:第020讲:函数:内嵌函数和闭包 | 课后测试题及答案 2) 题源2 这几日挺巧的 在鱼 C 论坛上找 Python 习题,点开第 20 节,看到两道操作题 又想起一个网站 Python Challenge ,久闻其名,未曾拜访,遂一探究竟 原来小甲鱼老师第 20 节的两道操作题改编自 Python Challenge 的 level2 与 level 3 2

python基础面试集锦(1-50)

目录 1.Python和Java.PHP.C.C#.C++等其他语言的对比 2.简述解释型语言和编译性语言? 3.Python解释器种类以及特点? 4 .位和字节的关系? 5.b.B.KB.MB.GB的关系? 6.一个字符不同编码对应的字节数? 7.PEP8编码规范? 8.or and 计算规则 9.求结果:or and 10.ASCII.unicode.utf-8.gbk区别? 11.字节码和机器编码的区别? 12.三元运算编写格式? 13.Python2和Python3的区别? 14.一行代

1152: 零起点学算法59——找出一个数组中出现次数最多的那个元素

1152: 零起点学算法59--找出一个数组中出现次数最多的那个元素 Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 990  Accepted: 532[Submit][Status][Web Board] Description 找出一个数组中出现次数最多的那个元素 Input 第一行输入一个整数n(不大于20) 第二行输入n个整数 多组数据 Output 找出n个整数中出现次数最多的那个整数(