首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用python查找大型.csv文件中的行数

问使用python查找大型.csv文件中的行数
EN

Stack Overflow用户
提问于 2017-05-24 04:55:55
回答 1查看 8.3K关注 0票数 3

我正在处理非常大的.csv文件,并尝试查找文件中的行数以及其他内容,例如解析为json等。

我的问题是如何克服csv库的限制,因为我经常收到以下错误。

我提供了一个示例程序,我知道它可以在python3中工作,它将返回csv文件中的行数。

代码语言:javascript
复制
 import csv

    input = 'large-input.csv'
    with open(input ,"r") as f:
        reader = csv.reader(f,delimiter = ",")
        data = list(reader)
        row_count = len(data)
        print(row_count)

但是,当针对1.5 csv的csv文件运行时,我仍然收到此错误。

代码语言:javascript
复制
Traceback (most recent call last):
  File "csv-len.py", line 6, in <module>
    data = list(reader)
_csv.Error: field larger than field limit (131072)

我们非常感谢围绕这个问题所做的任何工作。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2017-05-24 05:01:27

CSV通常以换行符分隔,因此通过CSV解析器运行它来计算行数可能比只计算行数效率低。

像这样的事情会快得多。如有必要,您可以减去标题的一行。

代码语言:javascript
复制
def row_count(input):
    with open(input) as f:
        for i, l in enumerate(f):
            pass
    return i
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44144843

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档