Python 更改seqID并删除图案后的零件

Python 更改seqID并删除图案后的零件,python,regex,bioinformatics,biopython,fasta,Python,Regex,Bioinformatics,Biopython,Fasta,我实际上有fasta文件,例如: >seq1:QXQXQWQ:XQWQ ACTG >seq3:WCCWHWJ:WGH ATGC >seq7:GCGC:G ATGACA 我想删除第一个“:”之后的所有内容,并获得: >seq1 ACTG >seq3 ATGC >seq7 ATGACA 如果可能的话,使用biopython进行此操作?在biopython中使用SeqIO进行简单操作,只需通过适当拆分字符串来修改record.id和record.descript

我实际上有fasta文件,例如:

>seq1:QXQXQWQ:XQWQ
ACTG
>seq3:WCCWHWJ:WGH
ATGC
>seq7:GCGC:G
ATGACA
我想删除第一个“:”之后的所有内容,并获得:

>seq1
ACTG
>seq3
ATGC
>seq7
ATGACA

如果可能的话,使用biopython进行此操作?

在biopython中使用
SeqIO
进行简单操作,只需通过适当拆分字符串来修改
record.id
record.description

from Bio import SeqIO

def yield_records(in_file):
    for record in SeqIO.parse(in_file, 'fasta'):
        record.description = record.id = record.id.split(':', 1)[0]
        yield record

SeqIO.write(yield_records('in.fasta'), 'out.fasta', 'fasta')
string.split(“:”)[0]