Bio.SeqIO.Interfaces 模組
Bio.SeqIO 支援模組(非一般使用)。
除非您正在為 Bio.SeqIO 撰寫新的剖析器或寫入器,否則您不應該使用此模組。它提供基底類別來嘗試簡化事情。
- class Bio.SeqIO.Interfaces.SequenceIterator(source: IO | PathLike | str | bytes, alphabet: None = None, mode: str = 't', fmt: str | None = None)
基礎:
ABC
、Generic
用於建構 SeqRecord 迭代器的基底類別。
您應該撰寫一個會傳回 SeqRecord 產生器的 parse 方法。您可能也會想要重新定義 __init__ 方法。
- __init__(source: IO | PathLike | str | bytes, alphabet: None = None, mode: str = 't', fmt: str | None = None) None
建立 SequenceIterator 物件。
引數: - source - 輸入檔案串流,或輸入檔案的路徑 - alphabet - 不再使用,應為 None
此方法可由任何子類別覆寫。
子類別化時請注意: - 應該有一個單一非選擇性引數,即 source。 - 您不必需要 alphabet。 - 您可以加入其他選擇性引數。
- __next__()
傳回下一個項目。
- __iter__()
以 SeqRecord 物件的形式迭代項目。
Fasta 檔案的範例用法
with open("example.fasta","r") as myFile: myFastaReader = FastaIterator(myFile) for record in myFastaReader: print(record.id) print(record.seq)
此方法不應由任何子類別覆寫。它應該保持原樣,這將會呼叫 __next__ 的子類別實作,以實際剖析檔案。
- __abstractmethods__ = frozenset({'parse'})
- __orig_bases__ = (<class 'abc.ABC'>, typing.Generic[~AnyStr])
- __parameters__ = (~AnyStr,)
- class Bio.SeqIO.Interfaces.SequenceWriter(target: IO | PathLike | str | bytes, mode: str = 'w')
基礎:
object
序列寫入器的基底類別。此類別應被子類別化。
它適用於具有(選擇性)標頭、重複記錄和(選擇性)頁尾的循序檔案格式,以及交錯的檔案格式,例如 Clustal。
使用者可以呼叫 write_file() 方法來寫入包含序列的完整檔案。
或者,使用者可以呼叫 write_header(),接著多次呼叫 write_record() 和/或 write_records(),最後呼叫 write_footer()。
請注意,write_header() 不能對記錄的數量做任何假設。
- __init__(target: IO | PathLike | str | bytes, mode: str = 'w') None
建立寫入器物件。
- clean(text: str) str
使用此方法以避免在輸出中出現換行符號。
- write_header()
將檔案標頭寫入輸出檔案。
將檔案頁尾寫入輸出檔案。
- write_record(record)
將單一記錄寫入輸出檔案。
record - 一個 SeqRecord 物件
- write_records(records, maxcount=None)
將記錄寫入輸出檔案,並回傳記錄的數量。
records - 一個回傳 SeqRecord 物件的列表或迭代器 maxcount - 檔案格式允許的最大記錄數,若無最大值則為 None。
- write_file(records, mincount=0, maxcount=None)
寫入包含記錄的完整檔案,並回傳記錄的數量。
records - 一個回傳 SeqRecord 物件的列表或迭代器