Agent Skills
返回列表
⚖️

Biopython Python 生物计算

行业专业 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/biopython。

技能介绍

你在解决什么问题

做 DNA/RNA/蛋白质相关脚本时,常见痛点是格式杂(FASTA、GenBank、FASTQ、PDB、mmCIF)、NCBI 检索与批量下载要守速率规则,BLAST 与比对结果解析繁琐,结构层级(SMCRA)与系统发育树又各有一套 API。Biopython 把这类计算分子生物学任务收敛到一套模块化 Python 子包,当前文档对应 Biopython 1.85(Python 3,依赖 NumPy)。

技能如何组织工作流

本技能按领域拆分参考文档,写代码时先对号入座再查 references/:

  • 序列:Bio.Seq、Bio.SeqIO — 创建/翻译/反向互补、SeqRecord、大文件迭代读写与格式互转
  • 比对:Bio.Align、Bio.AlignIO — 两两与多序列比对、BLOSUM/PAM、比对统计
  • 数据库:Bio.Entrez — PubMed、GenBank、Protein、Gene 等搜索与下载(需设置 Entrez.email)
  • BLAST:Bio.Blast — Web/本地搜索、XML 解析、按 E 值过滤
  • 结构:Bio.PDB — PDB/mmCIF、距离/二面角、DSSP、叠合与 RMSD
  • 系统发育:Bio.Phylo — Newick/NEXUS、建树、剪枝与可视化
  • 其它:Bio.motifs、Bio.PopGen、Bio.SeqUtils、Bio.Restriction 等

推荐路径:根据任务选模块 → 读对应 reference → 抽取代码模式并组合;大文件用迭代器,网络与解析错误要显式处理,避免重复下载同一批 NCBI 数据。

适用边界与注意点

  • 多序列比对写入前序列长度需一致;格式字符串与真实文件不符会触发 EOF 类解析错误。
  • NCBI 访问缺邮箱会有 Entrez logger 警告;无效 accession 易导致 HTTP 400。
  • 大规模 BLAST 更适合本地 BLAST 或缓存结果;PDB 质量参差时可用 PDBParser(QUIET=True) 控制噪声。
  • 翻译与群体遗传分析要选对遗传密码表与输入格式;复杂、长会话的多步流水线可另行借助托管研究环境,但日常单模块任务按 reference 即可。

使用场景

  • 从 NCBI Entrez 按 Gene/GenBank 登录号检索并下载记录,批量导出为流水线使用的 FASTA 或 GenBank 文件
  • 对未知序列跑 BLAST(Web 或本地),解析 XML 结果并按 E 值、一致性过滤后提取命中序列
  • 读取 PDB 或 mmCIF,按 SMCRA 层级遍历链与残基,计算距离、二面角或做结构叠合与 RMSD
  • 将多序列比对写入 AlignIO,基于距离或比对结果构建 Newick 系统发育树并剪枝、重定根后可视化

适合人员

  • 湿实验团队里的生信支持人员,要把 FASTA/GenBank/FASTQ 读写和格式互转固化成可复用 Python 脚本
  • 结构生物学或药物设计方向的研究生,需从 PDB 解析坐标、做 DSSP 二级结构赋值或结构比较
  • 进化与比较基因组学研究者,需要两两/多序列比对、替换矩阵参数调优及系统发育树构建
  • 群体遗传或宏基因组分析人员,要处理 GenePop、限制酶位点扫描或 GC/熔解温度等序列统计量