Python3中的file对象支持迭代读取文件行,可以使用next()方法来实现,比如:
f = open('test.txt', 'r') for line in f: print(line) f.close()
也可以使用next()方法:
f = open('test.txt', 'r') while True: line = f.next() print(line) f.close()
next()方法也可以接收一个参数,表示读取的字节数:
f = open('test.txt', 'r') while True: line = f.next(10) print(line) f.close()
在这种情况下,每次读取的字节数为10,但是要注意,如果一行文本的字节数小于10,那么next()方法将会返回整行文本,不会把一行文本分成多次读取,也就是说,next()方法会一次性读取一行文本,而不会拆分成多次读取。
使用next()方法迭代读取文件行时,可以使用for循环,也可以使用while循环,只要在while循环中使用try-except语句来捕获StopIteration异常就可以了,比如:
f = open('test.txt', 'r') while True: try: line = f.next() print(line) except StopIteration: break f.close()
使用next()方法迭代读取文件行的优点:
使用next()方法迭代读取文件行的缺点:
本文链接:http://task.lmcjl.com/news/8659.html