读写fasta格式。

oldowan.fasta的Python项目详细描述


fasta是一个用于读写序列数据的小型生物信息实用程序。 以FASTA格式。FASTA是最常用的简单文件格式 在一个文件中存储多个DNA、RNA或蛋白质序列。它是一个 基于文本的可读格式。

安装说明

这个包是纯Python的,没有标准之外的依赖项 图书馆。最简单的安装方法是使用 setuptools包。通常是这样的:

$ easy_install oldowan.fasta

或者在类unix系统上,假设您正在安装到主Python site-packages目录作为非特权用户,这:

$ sudo easy_install oldowan.fasta

您还可以使用标准的python distutils设置方法下载 从文件列表到本页底部的当前源存档, 把它拆开,然后安装在MacOSX和许多其他类似unix的系统上 下载了存档并更改为包含此存档的目录 你的壳,可能是这样的:

$ tar xvzf oldowan.fasta*
$ cd oldowan.fasta*
$ python setup.py install

快速启动

fasta有一个基于标准pythonfile的接口。进口 奥多万·法斯塔:

>>> from oldowan.fasta import fasta

读取fasta格式文件:

>>> for entry in fasta('sequences.fasta', 'r'):
...     print entry['name'], len(entry['sequence'])

执行上述操作的更繁琐但等效的方法:

>>> fasta_file = fasta('sequences.fasta', 'r')
>>> for entry in fasta_file:
...     print entry['name'], len(entry['sequence'])
>>> fasta_file.close()

更麻烦的是,如果FASTA文件很大,可能 内存耗尽版本(前两个方法一次只读取一个条目 从文件中,这会立即将整个文件读入内存:

>>> fasta_file = fasta('sequence.fasta', 'r')
>>> entries = fasta_file.readentries()
>>> fasta_file.close()
>>> for entry in entries:
...     print entry['name'], len(entry['sequence'])

读取FASTA格式序列的字符串:

>>> fasta_string = open('sequences.fasta', 'r').read()
>>> for entry in fasta(fasta_string, 's'):
...     print entry['name'], len(entry['sequence'])

读取文件对象:

>>> fasta_file = open('sequences.fasta', 'r')
>>> for entry in fasta(fasta_file, 'f'):
...     print entry['name'], len(entry['sequence'])

写入文件:

>>> fasta_file = open('sequences.fasta', 'w')
>>> fasta_file.write({'name':'Sequence1', 'sequence':'AGCTAGCT'})
>>> fasta_file.close()

发布历史记录

1.0.0(2008年8月16日)
模块的初始版本。
1.0.1(2009年3月25日)
错误修复更新
1.0.2(2009年3月26日)
更新版本信息
1.0.4(2015年8月4日)
这次实际修复了版本加载问题

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何向xsi:nil元素添加另一个属性?   Java抽象泛型方法,使用具体类型实现通配符   java使用pcap4j截断pcap文件   当我放置字母a、b和c时,java中的异常预期会下降   java设置活动对话框不可取消   接口类型变量上的Java克隆   使用Java或BouncyCastle对CSR(证书签名请求)进行安全解码/读取   java调用SavingsAccount对象上的函数并打印结果   java如何在Android应用程序上显示地图上的兴趣点(POI)并与之交互?   如果在JavaFX中的ResultSet中未找到任何内容,则显示java警报   java我将springboot和@component与@scheduled一起使用,它每12小时锁定一次   ApachePOI如何使用java删除包含字符串的word表的行   java如果对象(x,y)靠近其他对象(x,y)   从未对JMSException调用java JMS CachingConnectionFactory OneException方法   javascript使用java将HTML页面转换为MS word