Python使用生成器读取大文件

2018-09-11  本文已影响0人  暖遇

encoding:utf-8

author = 'zhoupao'
date = '2018/7/15 20:31'

500G, 特殊 一行

def myreadlines(f, newline):
buf = ""
while True:
while newline in buf:
pos = buf.index(newline)
yield buf[:pos]
buf = buf[pos + len(newline):]
chunk = f.read(4096)

if not chunk:
  #说明已经读到了文件结尾
  yield buf
  break
buf += chunk

with open("input.txt") as f:
for line in myreadlines(f, "{|}"):
print(line)

上一篇 下一篇

猜你喜欢

热点阅读