Bio.SeqIO.TabIO 模块

Bio.SeqIO 对“tab”(简单的制表符分隔)文件格式的支持。

您应该通过 Bio.SeqIO 函数使用此模块。

“tab”格式是一种非正式的纯文本文件格式,其中每个序列都位于一行(长行)上。每行包含标识符/描述,然后是制表符,然后是序列。例如,考虑以下简短的 FASTA 格式文件

>ID123456 possible binding site?
CATCNAGATGACACTACGACTACGACTCAGACTAC
>ID123457 random sequence
ACACTACGACTACGACTCAGACTACAAN

除了描述之外,还可以用简单的两列制表符分隔格式表示如下

ID123456(tab)CATCNAGATGACACTACGACTACGACTCAGACTAC
ID123457(tab)ACACTACGACTACGACTCAGACTACAAN

读取此文件时,将“ID123456”或“ID123457”作为记录的 .id 和 .name 属性。没有其他信息可记录。

同样,写入此格式时,Biopython 将只记录记录的 .id 和 .seq(而不是描述或任何其他信息),如上例所示。

class Bio.SeqIO.TabIO.TabIterator(source)

Bases: SequenceIterator

用于制表符分隔文件的解析器。

__init__(source)

将制表符分隔行迭代为 SeqRecord 对象。

文件的每一行都应该只包含一个制表符,将行分成标识符和完整序列。

参数
  • source - 以文本模式打开的文件类对象,或文件路径

第一个字段被视为记录的 .id 和 .name(无论文本中是否有空格),第二个字段是序列。

任何空白行都会被忽略。

示例

>>> with open("GenBank/NC_005816.tsv") as handle:
...     for record in TabIterator(handle):
...         print("%s length %i" % (record.id, len(record)))
gi|45478712|ref|NP_995567.1| length 340
gi|45478713|ref|NP_995568.1| length 260
gi|45478714|ref|NP_995569.1| length 64
gi|45478715|ref|NP_995570.1| length 123
gi|45478716|ref|NP_995571.1| length 145
gi|45478717|ref|NP_995572.1| length 357
gi|45478718|ref|NP_995573.1| length 138
gi|45478719|ref|NP_995574.1| length 312
gi|45478720|ref|NP_995575.1| length 99
gi|45478721|ref|NP_995576.1| length 90
parse(handle)

开始解析文件,并返回一个 SeqRecord 生成器。

iterate(handle)

解析文件并生成 SeqRecord 对象。

__abstractmethods__ = frozenset({})
__parameters__ = ()
class Bio.SeqIO.TabIO.TabWriter(target: IO | PathLike | str | bytes, mode: str = 'w')

Bases: SequenceWriter

用于写入简单制表符分隔格式文件的类。

每行仅包含“id(tab)sequence”。

不会记录任何描述、名称或其他注释。

不建议直接使用此类。相反,请使用函数 as_tab,或使用带有 format="tab" 的顶级 Bio.SeqIO.write() 函数。

write_record(record)

将单个制表符行写入文件。

Bio.SeqIO.TabIO.as_tab(record)

将记录作为制表符分隔的(id(tab)seq)字符串返回。