【问题标题】:List of dictionaries to csv file without square brackets不带方括号的 csv 文件的字典列表
【发布时间】:2016-08-17 18:54:36
【问题描述】:
with open('processedData/file.tsv', 'wb') as f:
    dict_writer = csv.DictWriter(f, keys, delimiter = '\t')
    dict_writer.writeheader()
    dict_writer.writerows(hgnc_list)

通过执行上述代码,我成功地将字典列表写入文件。

The catch is: 字典中的一些值是列表。我希望不带方括号或 '' 并使用 | 作为分隔符而不是 comma

所以输出的 csv 文件会是这样的:

column1    column2    column3 ... columnN
value11    value121|value122    value13 ... value1N1|value1N2|value1N3

代替:

column1    column2    column3 ... columnN
value11    ['value121','value122']    value13 ... ['value1N1','value1N2','value1N3']

可以在不重新处理字符串的情况下完成吗?

【问题讨论】:

    标签: python list csv dictionary


    【解决方案1】:

    csv 模块(以及一般的 CSV 文件)不会以任何特殊方式处理列表条目之类的事情。如果要将列表放入 CSV 条目中,则需要将值显式转换为字符串,存储字符串值,然后在读取数据时自行将它们解析回列表。

    例如,如果您有some_list,一个字符串列表,您可以将字典中的它替换为'|'.join(some_list),以获取管道分隔的字符串,然后存储该值。如果您重新读取该数据,则此类条目将被读取为单个字符串值,您必须自己将其拆分为一个列表。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-09
      • 2021-11-16
      • 2020-10-15
      • 1970-01-01
      • 1970-01-01
      • 2019-12-21
      • 2019-11-26
      • 1970-01-01
      相关资源
      最近更新 更多