【发布时间】:2013-12-03 19:19:52
【问题描述】:
我有一个 python 脚本需要逐个字符地读取 FASTA 文件。为此,我一直在使用c = f.read(1),其中 f 是打开的文件。我需要它来识别它何时到达行尾,但 '\n' 和 '\r' 似乎不起作用。我以前从未使用过这种文件类型,所以我不确定 FASTA 是否不同。有谁知道如何做到这一点?谢谢!
编辑:EOF != EOL。我知道如何找到文件的结尾。
编辑 2:我用来搜索 EOL 字符的行是这样的:
if c == '\n' or c == '\r':
#operations to perform if found...
【问题讨论】:
-
只是想知道你为什么要这样做......你知道有无数的 FASTA 解析器和支持库来处理这种事情,对吧?
-
是的,但是我被告知要设计一种无需任何专门构建的解析器的方法,我自己设计
-
你是用文本模式还是二进制模式打开?
-
我已经在 Python 中为 FASTA 编写了解析器,并且使用标准的行尾字符可以正常工作。如果问题出在其他地方,也许您可以发布更多代码?
-
根据Wiki,EOL 是正常的,并与
>继续一行,直到下一个>,这样您就可以正常阅读行...您是否难以识别结尾序列?