用途:Biopython 是免费的计算分子生物学 Python 工具集,用于生物序列处理、文件格式转换、NCBI 数据库访问、BLAST、序列比对、蛋白质结构分析、系统发育与群体遗传学等任务。当前版本 1.85(2025 年 1 月发布),支持 Python 3,依赖 NumPy。
主要能力:按子包划分。Bio.Seq 与 Bio.SeqIO 负责序列操作及 FASTA、GenBank、FASTQ 等格式读写与转换;Bio.Align 与 Bio.AlignIO 做全局/局部比对及多序列比对;Bio.Entrez 以编程方式访问 NCBI 的 PubMed、GenBank、Protein、Gene 等库;Bio.Blast 运行并解析 BLAST 结果;Bio.PDB 解析 PDB/mmCIF 结构并按 SMCRA 层级导航、计算距离与 RMSD;Bio.Phylo 读写与可视化系统发育树;Bio.motifs、Bio.PopGen、Bio.SeqUtils、Bio.Restriction、Bio.Cluster、GenomeDiagram 提供基序、群体遗传、序列统计、限制酶分析、聚类与基因组图等功能。
使用方式:安装命令为 uv pip install biopython。使用 NCBI 数据库前必须设置邮箱:from Bio import Entrez; Entrez.email = "your.email@example.com",可选设置 Entrez.api_key 提高速率限制(10 次/秒,默认 3 次/秒)。常见用法包括用 SeqIO.parse 逐条读取序列、用 SeqIO.convert 转换格式、用 Entrez.esearch/efetch 检索与下载记录、用 NCBIWWW.qblast 与 NCBIXML 执行并解析 BLAST、用 PDBParser 解析结构、用 Phylo.read 与 draw_ascii 处理树。
适用场景:序列统计(GC 含量、分子量、熔解温度)、ORF 查找与翻译、批量下载与格式转换、BLAST 命中提取、结构距离计算、构建系统发育树等。
限制与注意:需 Python 3 与 NumPy;访问 NCBI 须提供邮箱并遵守速率限制,建议缓存下载数据;大文件应使用迭代器避免全部载入内存;解析前需确认文件格式匹配;比对前序列须等长;大规模 BLAST 建议使用本地版本;部分记录字段可能缺失,需容错处理。官方文档见 https://biopython.org/docs/latest/,源码见 https://github.com/biopython/biopython。