【发布时间】:2020-06-13 17:51:25
【问题描述】:
我希望在迭代 ~5GB 文件的生成器中执行以下操作:
from collections import Counter
c=Counter()
lines_as_list = (line.strip().split('|') for line in open('file-00000-of-00001.csv'))
header = next(lines_as_list)
item_data = (dict(zip(header, data)) for data in lines_as_list)
totals_per_country = (c[item['country']]+=1 for item in item_data)
这当然失败了,因为试图在理解中分配一个值。在生成器中执行此操作的建议方法是什么(不使用 for 循环或 pandas 等库)。
【问题讨论】:
标签: python python-3.x generator yield