如何在Python中逐行逐字符解析文件?
在Python中,如何逐个字符地从一个源文件中读取内容,直到遇到行结束符?还有,如何检查行结束符,以便可以开始读取下一行?最后,如何检查文件结束的条件,以便完成整个文件的读取?谢谢!:)
2 个回答
1
你不需要担心行和文件的结尾问题,只需执行下面的代码:
file = open('yourfile', 'r')
for line in file.readlines():
for c in line:
# do sth.
8
你可以在Python中简单地逐行处理文本。如果你想让Python自动处理不同操作系统(比如Windows、UNIX和Mac)之间的换行符,可以使用通用的换行模式:
with open("mytextfile.txt", "rtU") as f:
for line in f:
# Now you have one line of text in the variable "line" and can
# iterate over its characters like so:
for ch in line:
... # do something here
在这个示例代码中,你不需要自己去处理行结束符(EOL)或文件结束符(EOF)。
需要注意的是,line
这个变量包含了行结束符。如果你不想要这些换行符,可以使用line = line.rstrip()
这样的代码来去掉它们。