Bio.AlignIO.Interfaces 模块
AlignIO 支持模块(不适合一般使用)。
除非您正在为 Bio.AlignIO 编写新的解析器或写入器,否则您不应该使用此模块。它提供基类以尝试简化事情。
- class Bio.AlignIO.Interfaces.AlignmentIterator(handle, seq_count=None)
Bases:
object
用于构建 MultipleSeqAlignment 迭代器的基类。
您应该编写一个 next() 方法来返回 Alignment 对象。您可能也希望重新定义 __init__ 方法。
- __init__(handle, seq_count=None)
创建一个 AlignmentIterator 对象。
- 参数
handle - 输入文件
count - 可选,每个比对的预期记录数。推荐用于 fasta 文件格式。
- 注意,在子类化时
应该有一个唯一的非可选参数,即句柄,以及可选的计数,按此顺序。
您可以添加其他可选参数。
- __next__()
返回文件中下一个比对。
此方法应由任何派生类替换以执行有用的操作。
- __iter__()
以 MultipleSeqAlignment 对象迭代条目。
用于(串联)PHYLIP 文件的示例用法
with open("many.phy","r") as myFile: for alignment in PhylipIterator(myFile): print("New alignment:") for record in alignment: print(record.id) print(record.seq)
- class Bio.AlignIO.Interfaces.AlignmentWriter(handle)
Bases:
object
用于构建 MultipleSeqAlignment 写入器的基类。
您应该编写一个 write_alignment() 方法。您可能也希望重新定义 __init__ 方法。
- __init__(handle)
初始化类。
- write_file(alignments)
使用此方法写入包含给定比对的整个文件。
- 参数
alignments - 返回 MultipleSeqAlignment 对象的列表或迭代器
通常,此方法每个文件只能调用一次。
此方法应由任何派生类替换以执行有用的操作。它应该返回比对的数量。
- clean(text)
使用此方法避免在输出中获得换行符。
- class Bio.AlignIO.Interfaces.SequentialAlignmentWriter(handle)
Bases:
AlignmentWriter
用于构建 MultipleSeqAlignment 写入器的基类。
这假设每个比对都可以简单地附加到文件中。您应该编写一个 write_alignment() 方法。您可能也希望重新定义 __init__ 方法。
- __init__(handle)
初始化类。
- write_file(alignments)
使用此方法写入包含给定比对的整个文件。
- 参数
alignments - 返回 MultipleSeqAlignment 对象的列表或迭代器
通常,此方法每个文件只能调用一次。
- write_header()
使用此方法写入任何标题。
此方法应由任何派生类替换以执行有用的操作。
使用此方法写入任何页脚。
此方法应由任何派生类替换以执行有用的操作。
- write_alignment(alignment)
使用此方法写入单个比对。
此方法应由任何派生类替换以执行有用的操作。