1、什么是Biopython?
Biopython工程是一个使用Python来开发计算分子生物学工具的国际团体。(http://www.python.org) Python是一种面向对象的、解释型的、灵活的语言,在计算机科学中日益流行。Python易学,语法明晰,并且能很容易的使用以C,C++或 者FORTRAN编写的模块实现扩展。
Biopython官网(http://www.biopython.org)为使用和研究生物信息学的开发者提供了一个在线的 资源库,包括模块、脚本以及一些基于Python的软件的网站链接。一般来讲,Biopython致力于通过创造高质量的和可重复利用的模块及 类,从而使得Python在生物信息学中的应用变得更加容易。Biopython的特点包括解析各种生物信息学格式的文件(BLAST, Clustalw, FASTA, Genbank...),访问在线的服务器(NCBI,Expasy...),常见和不那么常见程序的接口(Clustalw, DSSP,MSMS...),标准的序列类,各 种收集的模块,KD树数据结构等等,还有一些文档。
基本来说,我们喜欢使用Python来编程,并且希望通过创建高质量、可复用的模块和脚本来使得Python在生物信息学中的应用变得容易。
2、你能用Biopython做什么?
此部分旨在能让你快速开始Biopython,并给你一个大概的了解什么可用以及如何使用它。 此部分的所有例子都会假设你有Python的基础知识,并且前提是你已经在你系统上 安装了Biopython。如果你认为你需要认真复习Python,主流的Python网站提供了相当多 的免费文档,你可以从以下网站开始(http://www.python.org/doc/)。
由于计算机上大量的生物学工作涉及到网上的数据库,某些例子也会需要联网才能完成。
让我们看看我们能用Biopython做什么吧。
3、Biopython功能概览
正如介绍中提到的,Biopython是一个库的集合,这个库能在计算机上工作的生物学家解决感兴趣的事情。一般来说,你至少需要一点编程经验(当然是Python!)或至少 有兴趣学习编程。Biopython的任务就是通过提供可重复利用的库,让编程人员的工作变得更加容易,可以使你能集中精力解决你所感兴趣的问题,而不用花太多精力去完成一个解析特殊文件格式的构件(当然,如果你想帮我们写一个原本不存在的解析器并把它贡献给Biopython,请继续!)。所以Biopython的工作是让你更加轻松!
值得一提的是,Biopython通常能给出多种方式来解决“相同的事情”。在最近的版本中, 情况有所改善,但这仍可让人沮丧,因为在理想的Python中应该只有一种正确的方式 去解决问题。但是,这也可以成为一个真正的好处,因为它给了你很多灵活性和对库的 控制。本教程给你展示普通的或简单的方式去处理问题以便于你能自己处理事情。想要 学习更多替代的方法,请查看Cookbook(第18 章, 这里有一些很酷的技巧和提示),进阶部分(第 20 章), 内建“文档”(通过Python help命令),或者 API 文档 ) 或者代码本身。