基础知识是我需要在每行的基础上处理4gig文本文件。在Python中处理大文本文件
使用.readline()或for f中的line对于内存很好,但需要IO才能使用。想要使用像yield这样的东西,但是(我认为)会砍断线条。
可能的答案:
file.readlines([sizehint])¶
Read until EOF using readline() and return a list containing the lines
如此读取。如果存在可选大小参数 参数,而不是 直到EOF,则会读取整个行 ,总计约为大小提示字节 (可能在舍入到内部缓冲区大小后可能会达到 )。 实现类似文件的接口的对象可能会选择忽略 尺寸提示(如果无法实现), 或无法有效实施。
没意识到你可以做到这一点!
你解析日志文件吗?那就不要。有些图书馆可以做得更好。 –
nananananananananananananana迭代器! (蝙蝠侠主题btw) –
我正在查看大的安装文件和追加行。我试图让readlines()工作,但这很困难,它似乎没有按照要求移动到下一个块。 – jdborg