10+ gig 文件读取问题 Python

10+ gig file reading problems Python

3 文件要逐行读取,因此:

with open(file) as f:
    for line in f:
        print line

for line in open(file):
    print line

逐行阅读器都尝试过,但是一旦文件大小开始超过 10 GB python 选择尝试将整个文件读入内存...(适用于文件大小 <10 GB)

知道为什么吗?

您可以使用可选参数来限制一次可以读取的字符数:

with open(file, "r") as f:
    line = f.readline(max_chars)
    while line:
        print(line, end='')
        line = f.readline(max_chars)