Python 3 - 将字典键和值写入 Excel 单元格

Python 3 - Writing Dictionary Keys and Values to Excel Cells

我目前正在尝试编写一个 Python 3 脚本来读取和操作 Excel 文件,以告诉我在特定地点进行购买的频率。为此,我正在使用 openpyxl 模块。

我的脚本当前会自动为我创建一个字典,其中包含每个商店的唯一键以及购买频率。 看起来像这样:{'Sains': 2, 'Sains Petrol': 1, 'McDonalds': 2, 'Council Tax': 1, 'Car Repair': 1, 'Steam Purchase': 1}

接下来我要做的是在相邻的单元格中写下每家商店的名称和购买频率的价值,如下所示:

A3: Shop | number

A4: Shop | number

A5: Shop | number

每个商店及其编号应该在新的一行中。

写入单元格的函数是new_sheet['A3'] = 'Hello World'new_sheet 是我分配给 sheet.

的变量名

我现在想写一段代码,把每家商店和它的号码写到我的新sheet。

我成功地编写了一个 for 循环,让我可以将字符串写入 sheet 上的单元格,但次数与字典中的条目一样多。 循环:

a = len(dict_shops_purchased_from)

for cell_number in range(2, a + 2):
    cell = 'A' + str(cell_number)
    for i in cell:
        new_sheet[cell] = 'Hello World'

所以这将 'Hello World' 写入单元格 A3 到 A8。

我还设法写了一个 for 循环,让我把字典的键和值变成变量:

for key, value in dict_shops_purchased_from.items():
     print(key, value)

我的问题是,我怎样才能更改代码,以便它将字典键写入单元格 Ax 并将值写入单元格 Bx, 因为问题是

new_sheet[cell] 来自 for 循环,keyvalue

也是如此

我尝试了以下方法:

for key, value in dict_shops_purchased_from.items():
    print(key, value)

for cell_number in range(2, a + 2):
    cell = 'A' + str(cell_number)
    for i in cell:
        new_sheet[cell] = key

但这只写了字典中的最后一个条目,即'Steam Purchase',六次

有什么想法可以让这项工作成功吗?

我希望这是有道理的

cell_no = 2
for key, value in dict_shops_purchased_from.items():
    new_sheet['A' + str(cell_no)] = key
    new_sheet['B' + str(cell_no)] = value
    cell_no += 1

你能试试上面的代码吗,希望对你有帮助