gpt4 book ai didi

python - 在不破坏阅读器的情况下获取 csv 文件的长度?

转载 作者:太空狗 更新时间:2023-10-30 01:51:00 26 4
gpt4 key购买 nike

我正在尝试执行以下操作:

reader = csv.DictReader(open(self.file_path), delimiter='|')
reader_length = sum([_ for item in reader])
for line in reader:
print line

但是,执行 reader_length 行会使阅读器本身不可读。请注意,我不想在阅读器上执行 list(),因为它太大而无法在我的机器上完全从内存中读取。

最佳答案

使用起始值为 1 的枚举,当您到达文件末尾时,您将获得行数:

for count,line in enumerate(reader,1):
# do work
print count

或者,如果您出于某种原因需要在开头计数,请使用生成器表达式求和并返回文件开头:

  with open(self.file_path) as f:
reader = csv.DictReader(f, delimiter='|')
count = sum(1 for _ in reader)
f.seek(0)
reader = csv.DictReader(f, delimiter='|')
for line in reader:
print(line)

关于python - 在不破坏阅读器的情况下获取 csv 文件的长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28973207/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com