繁体   English   中英

将字典写入csv文件

[英]Write Dictionary to csv file

我将字典final_merged打印到一个csv文件中,输出如下所示:

2015-08-02 07:00    ['1.00', '0.68', '0.68', '0.00', '9', '19.1', '19.1', '19.1']

我希望它看起来像这样:

 2015-08-02 07:00   1.00  0.68  0.68  0.00  9  19.1  19.1  19.1

所以我需要摆脱所有' [] ,有没有简单的方法可以转换字典?

到目前为止,我尝试了两个for循环

for value in final_merged.items():
line = ''
for values in value[1]:
    line= line+ str(values)+ '\t'
value[1]= line

但是我的str命令有问题

打印(值[1])显示:

['1.00', '0.68', '0.68', '0.00', '9', '19.1', '19.1', '19.1']

字典看起来像:

{'2015-08-02 07:00': ['1.00', '0.68', '0.68', '0.00', '9', '19.1', '19.1', '19.1']}

我希望它看起来像这样

2015-08-02 07:00  1.00 0.68 0.68 0.00 9 19.1 19.1 19.1

使用str.join 您可以向其传递一个列表,然后它将创建一个字符串,其中所有元素都合并为一个字符串。 但是,您也可以在每个字符串之间插入一个特定的字符串,例如'\\t'

line = line + '\t'.join(values) + '\t'

哪个应该给您正确的输出。

我解决了这个问题:在代码编写器的最后,我只是输入了:

w=csv.writer(f,delimiter='\t')
w.writerow(header)
for key, values in sorted(final.merged()):
w.writerow([key] + values)

在我只有

w.writerows(sorted(merge_d.items();))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM