Sr. No Name
1 a
2 b
3 c
想象这是我的 Excel 文件。
还有
获取标题:
dic = pandas.read_excel(excelfile).columns
将Excel文件转换为字典:
readers = pandas.read_excel(excelfile).to_dict()
要检索值:
for reader in readers:
reader['Name']
因此,如果我检索这样的值,它会显示“列表索引必须是 int,而不是 str”。如何解决这个问题。
最佳答案
.to_dict()
将创建一个字典,其中键是列的名称,以及包含值的值列表。
事实上,对于给定的数据帧,我们得到:
>>> df.to_dict()
{'Sr. No': {0: 1, 1: 2, 2: 3}, 'Name': {0: 'a', 1: 'b', 2: 'c'}}
您可能想将其转换为字典列表。对于旧版本的 pandas,您可以通过指定 'records'
来实现,对于旧版本,这是 record
:
>>> df.to_dict('records')
[{'Sr. No': 1, 'Name': 'a'}, {'Sr. No': 2, 'Name': 'b'}, {'Sr. No': 3, 'Name': 'c'}]
for reader in pandas.read_excel(csvfile).to_dict(<b>'records'</b>):
print(reader['Name'])
关于python - 将 excel 的值作为 python 字典检索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58059805/