我尝试使用以下格式(带引号)和
来获取数据1)将其导出为CSV 2)将标头添加到文件中:
{
9: [[0, 0, 'ABC'], [1, 2, 'DE'F'], [3, 4, 'GHI']],
11: [[9, 30, 'LEOPAR'D'], [17, 28, 'DOG'], [19, 43, 'APP'LE']]
}
数据应如下所示:
Field1 Field2 Field3 Field4
9 0 0 ABC
9 1 2 DE'F
9 3 4 GHI
11 9 30 LEOPAR'D
引号也出现在' \ u2019s'
我有一个包含大约900个密钥的文件,因此我需要一种动态方式来调用密钥,而不是显式调用。我尝试了一个预期的序列'以下代码出错。理想情况下,我希望' 9'在csv文件中为与其关联的每一行重复。
writefile = filepath
fieldnames = {'data1':['data2', 'data3', 'data4']}
with open( writefile, 'w' ) as f:
writer = csv.writer(f)
writer.writerow(fieldnames)
writer.writerows(section_num_by_paragraph_num)
答案 0 :(得分:0)
以下适用于我,但我不明白你的意思
所以我需要一种动态的方式来调用密钥
如果下面的代码没有达到你想要的效果,请更具体。
import csv
data = {
9: [[0, 0, 'ABC'], [1, 2, 'DE"F'], [3, 4, 'GHI']],
11: [[9, 30, 'LEOPAR"D'], [17, 28, 'DOG'], [19, 43, 'APP"LE']]
}
fieldnames = ['Field{}'.format(i) for i in range(1,5)]
with open( 'outfile', 'w' ) as f:
writer = csv.writer(f, delimiter='\t', quoting=csv.QUOTE_NONE, escapechar='\\', quotechar="")
writer.writerow(fieldnames)
for k, vv in data.items():
for v in vv:
writer.writerow([k] + v)