【问题标题】:How to convert between csv.reader and csv.DictReader objects? [duplicate]如何在 csv.reader 和 csv.DictReader 对象之间进行转换? [复制]
【发布时间】:2013-11-03 16:11:33
【问题描述】:

我需要使用 cvs.reader 对象来处理,因为必须保留列的顺序。 但是,出于其他一些原因,我还想拥有 csv.DictReader 对象。

现在,是否有一种简单的方法可以在不重新读取文件的情况下相互转换它们?

【问题讨论】:

  • AFAIK DictWriter 确实保留了列的写入顺序,所以我不明白你在问什么。你能否提供一个你想使用的示例代码、它的预期输出以及你得到的输出?

标签: python csv


【解决方案1】:

我建议您改用tablib

ds = tablib.Dataset()
ds.csv = open(csvfile).read()

然后您可以将ds 作为行序列进行迭代,ds.dict 为您提供每行的OrderedDict 实例列表。如果您还需要将其转换为其他格式,或者再次编辑并另存为 csv,这会容易得多。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-18
    • 2018-01-16
    • 2010-09-17
    • 2017-03-16
    • 2013-02-15
    • 1970-01-01
    相关资源
    最近更新 更多