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']
这可以在不重新处理字符串的情况下完成吗?
答案 0 :(得分:1)
csv
模块(以及一般的CSV文件)不以任何特殊方式处理列表条目等内容。如果要将列表放入CSV条目,则需要将值显式转换为字符串,存储字符串值,然后在读取数据时将它们自行解析回列表。
例如,如果你有一个字符串列表some_list
,你可以用'|'.join(some_list)
替换字典中的字符串来获取一个以管道分隔的字符串,然后存储该值。如果您重新读取该数据,则此类条目将被读取为单个字符串值,您必须自己将其拆分为列表。