2013-12-03 24 views
1

我有一個python腳本需要逐字讀取FASTA文件。爲此,我一直在使用c = f.read(1),其中f是打開的文件。我需要它來識別它何時到達行尾,但'\ n'和'\ r'似乎不起作用。我以前從來沒有使用過這種文件類型,所以我不確定FASTA是不同的。有誰知道如何做到這一點?謝謝!Python - 如何識別FASTA文件中的EOL

編輯:EOF!= EOL。我知道如何找到文件的結尾。

編輯2:我使用搜索的EOL字符的行是這樣的:

if c == '\n' or c == '\r': 
    #operations to perform if found... 
+2

只是想知道爲什麼你這樣做......你知道無數的FASTA解析器併爲此支持圖書館,對吧​​? –

+0

是的,但我被告知設計一種方法來做到這一點,沒有任何特殊的解析器,自己設計它 – thnkwthprtls

+1

你打開它在文本或二進制模式? – user2357112

回答

1

公開賽在universal newline模式下的文件:

with open('myfile.fasta', 'rU') as fp: 
    ... 

和反對'\n'比較字符:

if c == '\n': 
+0

我從來沒有聽說過,但它似乎工作。謝謝!:) – thnkwthprtls