-1

我被分配了一个以前没有编程经验的项目的任务。它要求使用 while 循环、增量和 boo 创建一个主题查找器。我相信我走在正确的轨道上,但非常不确定,因为我没有编程经验。任何人都可以帮助我找到我的错误并告诉我我需要做什么来纠正它们。再次,我是一个生物学家,被要求接受这个并且

gi|14578797|gb|AF230943.1| Vibrio hollisae 菌株 ATCC33564 Hsp60 (hsp60) 基因,部分 cds
CGCAACTGTACTGGCACAGGCTATCGTAAGCGAAGGTCTGAAAGCCGTTGCTGCAGGCATGAACCCAATG
GACCTGAAGCGTGGTATTGACAAAGCGGTTGCTGCGGCAGTTGAGCAACTGAAAGCGTTGTCTGTTGAGT
GTAATGACACCAAGGCTATTGCACAGGTAGGTACCATTTCTGCTAACTCTGATGAAAACTGTAGGTAACAT
CATTGCAGAAGCGATGGAAAAAGTAGGCCGCGACGGTGTTATCACTGTTGAAGAAGGTCAGTCTCTGCAA
GACGAGCTGGATGTGGTTGAAGGTATGCAGTTTGACCGCGGCTACCTGTCTCCATACTTCATCAACAACC
AAGAGTCTGGTTCTGTTGATCTGGAAAACCCATTCATCCTGCTGGTTGACAAAAAAGTATCAAACATCCG
CGAACTGCTGCCTACTCTGGAAGCCGTCGCGAAATCTTCACGTCCACTGCTGATCATCGCTGAAGACGTA
GAAGGTGAAGCACTGGCAACACTGGTTGTAAACAACATGCGTGGCATCGTAAAAGGGCAGCAGTT

gi|14578795|gb|AF230942.1| damselae光杆菌菌株ATCC33539 Hsp60(hsp60)基因,部分cds
GGCTACAGTACTGGCTCAAGCAATTATCACTGAAGGTCTAAAAGCGGTTGCTGCGGGTATGAACCCAATG
GATCTTAAGCGTGGTATCGACAAAGCAGTAGTTGCTGCTGTTGAAGAGCTAAAAGCACTATCTGTTCCTT
GTGCTGACACTAAAGCGATTGCTCAGGTAGGTACTATCTCTGCAAACTCTGATGCAACTGTGGGTAACCT
AATTGCAAAAGCTATGGATAAAGTTGGTCGTGATGGTGTTATCACGGTTGAAGAAGGCCAAGCGCTACAA
GATGAGTTAGATGTAGTTGAAGGTATGCAGTTCGATCGCGGTTACCTATCTCCATACTTCATCAACAACC
AACAAGCAGGTGCGGTGGAGCTAGAAAGCCCATTTATCCTTCTTGTTGATAAGAAAATCTCTAACATCCG
TGAGCTATTACCAGCACTAGAAGGCGTTGCAAAAGCATCTCGTCCTCTACTGATCATCGCTGAAGATGTT
GAAGGTGAAGCACTAGCAACACTGGTTGTGAACAACATGCGCGGCATTGTTAAAGTTGCTGCTGTT

我需要一些帮助。

import re

#function parsing header for sequence
def fasta_splitter(x):
    boo=0
    seq = ""
    i=0
    while i < len(lines)
         if line[0] ==">"and boo ==0
        line[i] = header
        boo = 1
        i=1+i
        elif line [i][0] ==">"
        header=line[0]
        seq=""
        i=i+1
        else
        seq=seq+line[i]
            print ("header" + "seq")

#open file and read file by command line
x=open('C:\\Python27\\fasta.py.txt','r+')
lines = x.readlines()
fasta_splitter(lines)
#split orgnaism details from actual bases
# not sure how to call defined function 

re.search(pattern, string)
# renaming string seq to dna
seq ="x"
m = re.search(r"GG(ATCG)GTTAC",dna)   
print "m"
4

1 回答 1

0

对于初学者,阅读带有Bio.SeqIO模块的 FASTA,因此您不必编写这个 fasta_splitter 怪物。Biopython 通常很棒。其次,你把所有事情都搞砸了。您在没有定义模式或字符串的情况下调用 re.search。这只会崩溃。然后你写

seq="x"
...
print "m"

在这两种情况下,您都使用字面意义上的字母“x”或“m”,而您需要的是变量名。正确的事情是

seq = x
...
print(m)

所有这一切都是假设这是一项学生作业,而不是一项实际研究。在后一种情况下,通常最好使用一些现代的主题查找工具:这些工具比任何一堆正则表达式都更敏感和生物学上正确。

于 2015-10-13T06:16:14.697 回答