Python CSV文件无法读取所有行

时间:2019-01-08 03:44:08

标签: python python-3.x 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

1 个答案:

答案 0 :(得分:3)

如果我没看错的话,似乎您只能找到6000个唯一的参考编号。您可能要获取6000多个行,但要获取6000个组。

要正确计算从csv文件读取的行数,请尝试使用

print(len(data))

代替

print(count)

因为count仅表示您拥有的唯一参考编号组的数量。