Biopython 中与 BioPerl 的 Bio::DB::Fasta 等效的函数是什么?

What is the equivalent function in Biopython for BioPerl's Bio::DB::Fasta?

我正在使用 BioPython 将 Perl 代码转换为 Python 代码。

我得到了类似的东西:

my $db = Bio::DB::Fasta->new($path,$options)

我正在 Biopython 中寻找类似的功能。有这样的吗?

您可以在 http://biopython.org/DIST/docs/api/Bio.SeqIO-module.html

找到 FASTA 文件的 IO

关于索引,我认为 Biopython 不能像 Bio::DB:Fasta 那样处理 '.fai' 文件。您可以使用 SeqIO.index() 方法获得字典(如 perl 散列)。这是文档中显示的一个简单示例:

from Bio import SeqIO
record_dict = SeqIO.index("fasta_file.fas", "fasta")

print(record_dict["ID of the fasta sequence"])

SeqIO.index 在内存中创建一个 dict 以允许随机访问每个序列。阅读文档以查看该字典的限制:http://biopython.org/DIST/docs/api/Bio.File._IndexedSeqFileDict-class.html