使用python3 我有一本超过100把钥匙的字典。每个键的值都是一个列表。我想要做的是将字典的每个键写入Excel文档,每个术语都有自己的单元格,所有这些都在同一行上。
row = 0
col = 0
myDictionary = {
'car seat':['$10', '12', 'IT1'],
'piano':['$12', '2', 'IT1'],
'picture frame':['$2', '14', 'IT1'],
'shoes':['$20', '13', 'IT1'],
}
for key in myDictionary.keys()::
Result = [str(key), myDictionary[key]]
worksheet.write_row(row, col, Result)
row += 1
ExpectedOutput.xlsx(不包括标题):
KEY / listvalue1 / listvalue2 / listvalue3
car seat / $10 / 12 / IT1
piano / $12 / 2 / IT1
picture frame / $2 / 14 / IT1
shoes / $20 / 13 / IT1
我遇到的问题是我只能让Excel使用两列: 键/值
而不是我需要的4列: key / value1 / value2 / value3
因为我的字典中有100多个条目,所以我的目标是将每个密钥写入Excel,以便我可以轻松地对其进行排序。
答案 0 :(得分:3)
不是将密钥嵌入到列表中(在这种情况下未正确完成),您可以明确地编写key
和value
:
import xlsxwriter
workbook = xlsxwriter.Workbook('example.xlsx')
worksheet = workbook.add_worksheet()
myDictionary = {
'car seat':['$10', '12', 'IT1'],
'piano':['$12', '2', 'IT1'],
'picture frame':['$2', '14', 'IT1'],
'shoes':['$20', '13', 'IT1'],
}
row = 0
for key in myDictionary.keys():
worksheet.write(row, 0, key)
worksheet.write_row(row, 1, myDictionary[key])
row += 1
workbook.close()
输出:
注意,您可能希望迭代数据并更明确地转换它,例如,将美元值转换为数字。
答案 1 :(得分:0)
我要做的是将逗号分隔列表打印到CSV文件。
"KEY","listvalue1","listvalue2","listvalue3"
"car seat","$10", "12", "IT1"
"piano","$12", "2", "IT1"
"picture frame","$2", "14", "IT1"
"shoes","$20", "13", "IT1"
这可以在Python中轻松完成,Excel应该能够打开它。然后,您可以在电子表格中操作数据,或者如果您在其他地方需要,可以将其复制到另一个电子表格或电子表格标签中。