我将字典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命令有问题
print(values [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
答案 0 :(得分:1)
使用str.join
。您可以传递一个列表,然后它将创建一个字符串,其中所有元素都连接成一个字符串。但是,您也可以在每个字符串之间插入特定的字符串,例如'\t'
。
line = line + '\t'.join(values) + '\t'
哪个应该能给你正确的输出。
答案 1 :(得分:1)
thx我解决了它: 我在代码末尾的编写器中输入:
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();))