我有一个270,000行的txt文件(15M),试图用python导入,但它总是显示部分或部分内容(大约100,000行)
with open('a.log', 'r') as f:
raw_text_data = f.read()
print(raw_text_data)
如果使用max_size参数,则可以显示前半部分。
raw_text_data = f.read(1000)
还尝试以二进制模式('rb')读取它,但对我不起作用。
我不想逐个读取txt文件,有什么办法可以一次将其读取到内存中吗?
我的猜测是,您看到的是print()输出缓冲的结果。作为一种技巧,您可以尝试使用print(raw_text_data, flush=True)
绕过输出缓冲的方法。
注意,由于遇到缓冲区溢出的原因,建议不要print()
在STDOUT上用于显示大量数据。当显示大量数据时,应首选低级API,例如os.write()。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句