#!/usr/bin/env python
import csv
e = {'description':'The remote host is missing AIX', 'script_version': '$Revision: 1.4 $', 'plugin_modification_date':'2011/03/14'}
if __name__ == '__main__':
k = e.keys()
v = e.values()
print k
print v
with open('poop2.csv', 'w') as g:
writer = csv.writer(g)
for v in e:
writer.writerows(v)
这是我的csv看起来像
的样本d
e
s
c
以匹配keys
中的所有字符。
答案 0 :(得分:3)
csv.writerows(v)
期望v
是一系列行。相反,传入的v
是一个字符串 - 一系列字符,而不是一系列行。因此,每行都会得到一个字符。
将csv.writerow([v])
置于循环中更可能是您想要的。
顺便说一下,如果你想把键和值放在一起,我会迭代成对而不是提前分割键和值:
for k, v in e.iteritems():
writer.writerow([k, v])
相反,要生成两行,第一行使用键,第二行使用值:
writer.writerow(e.keys())
writer.writerow(e.values())