Python csv文件无法读取所有行

我的 csv 文件中总共有 36k 行,但是当我读取文件时它只处理 6k 行。它是从下往上处理的。


这是我的代码


with open('ledgers.csv', 'r') as csv_ledger:

    r = csv.DictReader(csv_ledger)

    data = [dict(d) for d in r]


    groups = []

    count = 0


    for k, g in groupby(data, lambda r: (r['ref_num'])):

        groups.append({

            "ref_num": k,

            "items": [{k:v for k, v in d.items() if k not in ['ref_num']} for d in list(g)]

        })

        count += 1


print (json.dumps(groups,indent = 4))

print(count)

返回给我的计数只有 6199。


我的文件格式如下


date       | ref_num | name        <---Header

2019-01-01 | H001    | shanny


qq_遁去的一_1
浏览 244回答 1
1回答

慕侠2389804

如果我没看错,您似乎只能找到 6000 个唯一参考编号。您可能正在获取超过 6000 行,但您正在获取 6000 个组。要正确计算从 csv 文件读取的行数,请尝试使用print(len(data))代替print(count)因为count仅表示您拥有的唯一参考编号组的数量。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python