为了账号安全,请及时绑定邮箱和手机立即绑定

如何将一列 Excel 转换为特定的字典格式?

如何将一列 Excel 转换为特定的字典格式?

子衿沉夜 2021-08-14 17:15:02
我的 excel 文件中有一个列,我想将该列的所有行转换为特定的字典格式。即双引号之间的keys和values以及括号和圆括号之间的values以及之前的单词设置,如图:我使用此代码,但这并没有给我我想要的格式:import openpyxl# Access active worksheet of excel filebook = openpyxl.load_workbook('workbook.xlsx')sheet = book.active# Access first columncolumn = sheet['A']# Use dictionary comprehension on the cells in the columnd = {    'item{}'.format(num): cell.value    for (num, cell) in enumerate(column, 1)}
查看完整描述

1 回答

?
杨魅力

TA贡献1811条经验 获得超6个赞

您的图像将字典中的值显示为单个值集,而不是整数。你可以把它cell.value放到一个集合中:


d = {

    'item{}'.format(num): {cell.value} for (num, cell) in enumerate(column, 1)

}

去检查:


>>> from pprint import pprint

>>> pprint.pprint(d)

{'item1': {5},

 'item2': {2},

 'item3': {0},

 'item4': {1},

 'item5': {6},

 'item6': {6},

 'item7': {1}}

>>> pprint([type(d[key]) for key in d.keys()])

[<class 'set'>,

 <class 'set'>,

 <class 'set'>,

 <class 'set'>,

 <class 'set'>,

 <class 'set'>,

 <class 'set'>]


查看完整回答
反对 回复 2021-08-14
  • 1 回答
  • 0 关注
  • 294 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信