【发布时间】:2017-01-01 14:16:23
【问题描述】:
以下代码将懒惰地逐行打印文本文件的内容,每次打印都在 '/n' 处停止。
with open('eggs.txt', 'rb') as file:
for line in file:
print line
是否有任何配置可以延迟打印文本文件的内容,每次打印都在 ', ' 处停止?
(或任何其他字符/字符串)
我之所以这样问,是因为我正在尝试读取一个文件,该文件包含一个用逗号分隔的 2.9 GB 长行。
PS。我的问题与这个不同:Read large text files in Python, line by line without loading it in to memory 我在问如何在换行符以外的字符处停止 ('\n')
【问题讨论】:
-
@grael 这根本不相关。
-
split()函数是否也不能很好地完成这项工作? -
@TamasHegedus 它很懒,因为它不会一次将所有文本文件加载到内存中,而是一次加载它的一小部分(您当前正在打印的那个)。这样,如果文件太大,您仍然可以访问它的内容而不会耗尽 RAM。
-
@VaibhavBajaj 不会偷懒吧?
-
@DhruvPathak 该问题专门询问如何在换行符以外的字符处停止。
标签: python lazy-loading