小白最近做磷酸化实验,进行蛋白多序列比对的时候发现NCBI BLAST中多序列联配不是很准确,于是参考python,编写了一个找特定磷酸化位点的程序。
#!coding:utf-8
import re #导入正则表达式模块
motif = input('Please input motif:') #输入磷酸化位点
regexp = re.compile(motif) #运用正则表达式搜索motif
seq = input("Please input protein sequence:") #输入蛋白序列
all = regexp.findall(seq) #寻找所有的匹配
iter = regexp.finditer(seq) #找到所有匹配并返回迭代器形式
list = [] #建立空列表
for s in iter: #用for语句输出
num = (s.start()+1) #由于s.start()从0开始说以真正位点要加1
print(str(s.start()+1)+' '+s.group())