您的位置:首页 > 编程语言 > Python开发

python练习题5 寻找序列中的motif

2017-11-19 13:52 926 查看
今天的题目是寻找序列中的motif的位置:http://rosalind.info/problems/subs/

刚开始认为,通过python的re模块可以很方便解决这个问题,但在实际过程中发现,使用re模块只会传回两个位置,并不像题目中,会传回三个位置。这样的话只能自己设计一个循环,匹配motif的位置。当然,python还有一个模块,可以很方便的完成这题。

#_*_ coding: utf-8 _*
import regex
def search_motif(str, substr):
'''寻找序列中的模体'''
match = regex.finditer(substr, str, overlapped=True)    #返回序列中与子串匹配的序列的位置,并包含重叠位置
position = [x.start() for x in match]
print position

if __name__ == '__main__':
str = 'GATATATGCATATACTT'
substr = 'ATAT'
search_motif(str, substr)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 生物信息