Openpyxl插入包含数据的行

2024-09-30 01:27:24 发布

您现在位置:Python中文网/ 问答频道 /正文

使用openpyxl==3.0.4

我正在寻找一种方法,使用类似于append的dict插入包含描述列的数据的行。例如,我可以做到这一点

ws.append({2: 4495, 3: 'Chicago, IL (Trial)', 4: 'Cloud', 5: 'US', 6: None, 7: 'Chicago Area', 8: None, 9: None, 10: None, 11: None, 12: 'X', 13: None})

但这会将行附加到工作表的底部。在中,可以插入行,指定插入上面行的行,但我似乎无法提供数据

基本上,我希望在给定行中插入此数据:

{2: 4495, 3: 'Chicago, IL (Trial)', 4: 'Cloud', 5: 'US', 6: None, 7: 'Chicago Area', 8: None, 9: None, 10: None, 11: None, 12: 'X', 13: None}
{2: 4497, 3: 'Ashburn, VA (Trial)', 4: 'Cloud', 5: 'US', 6: None, 7: 'Ashburn Area', 8: None, 9: None, 10: None, 11: None, 12: 'X', 13: None}

Tags: 数据方法nonecloudwsareadictil
2条回答

据我所知,没有一种内置的方法可以做到这一点,但您只需^{}和一个简单的循环即可:

data = {2: 4495, 3: 'Chicago, IL (Trial)', 4: 'Cloud', 5: 'US', 6: None, 7: 'Chicago Area', 8: None, 9: None, 10: None, 11: None, 12: 'X', 13: None}

ws.insert_rows(start_row)
for col, value in data.items():
    ws.cell(row=start_row, column=col, value=value)

我在查看将内部属性_current_row设置为插入点的源代码时发现了一些问题

worksheet._current_row = start_row

如果我们能在本地支持,那就太好了

相关问题 更多 >

    热门问题