我的excel文件中有一列,我想将该列的所有行转换为特定的字典格式。 即,双引号之间的键和值以及方括号和括号之间的值,并且在此之前设置了单词,如图所示:
我使用此代码,但这没有给我我想要的格式:
import openpyxl
# Access active worksheet of excel file
book = openpyxl.load_workbook('workbook.xlsx')
sheet = book.active
# Access first column
column = sheet['A']
# Use dictionary comprehension on the cells in the column
d = {
'item{}'.format(num): cell.value
for (num, cell) in enumerate(column, 1)
}
答案 0 :(得分:0)
您的图像将字典中的值显示为单个值sets,而不是整数。您可以将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'>]