如何在下面的代码中打印字典中的值?
How can I print a value from dictionary on the below code?
我正在编写一个从不同 excel 工作簿中获取数据的代码,有人建议我将这些数据放入字典中。这是代码:
d={}
for file in range(len(filenames)):
d[f'{file}'] = pd.read_excel(filenames[file], nrows = 32, usecols="A:D").fillna("")
问题是我现在不知道如何打印字典中的特定值。
print(d.keys())
给我一个答案:dict_keys(['0', '1'])
下面的代码工作正常:
for key in d:
print (d[key])
但是当我写: print(d[1])
我得到一个错误 "KeyError: 1"
字典不使用索引来引用字典中的项目,例如列表和元组。
在 for key in d: print (d[key])
中,如果您打印出密钥,您将看到密钥是什么。然后您可以通过 print(d["key_name"])
单独引用它们
要将它们显示为 print(d[1])
将键更改为整数而不是字符串 d[f'{file}']
到 d[file]
从技术上讲,这不是您问题的答案,但您可以将其用作补充。
您最好使用字典理解和文件名作为键:
d = {file: pd.read_excel(file, nrows = 32, usecols="A:D").fillna("")
for file in filenames}
#Use: d["some_file_name.xls"]
如果您仍然想使用文件编号,那么您需要一个列表,而不是字典:
l = [pd.read_excel(file, nrows = 32, usecols="A:D").fillna("")
for file in filenames]
#Use: l[0]
我正在编写一个从不同 excel 工作簿中获取数据的代码,有人建议我将这些数据放入字典中。这是代码:
d={}
for file in range(len(filenames)):
d[f'{file}'] = pd.read_excel(filenames[file], nrows = 32, usecols="A:D").fillna("")
问题是我现在不知道如何打印字典中的特定值。
print(d.keys())
给我一个答案:dict_keys(['0', '1'])
下面的代码工作正常:
for key in d:
print (d[key])
但是当我写: print(d[1])
我得到一个错误 "KeyError: 1"
字典不使用索引来引用字典中的项目,例如列表和元组。
在 for key in d: print (d[key])
中,如果您打印出密钥,您将看到密钥是什么。然后您可以通过 print(d["key_name"])
要将它们显示为 print(d[1])
将键更改为整数而不是字符串 d[f'{file}']
到 d[file]
从技术上讲,这不是您问题的答案,但您可以将其用作补充。
您最好使用字典理解和文件名作为键:
d = {file: pd.read_excel(file, nrows = 32, usecols="A:D").fillna("")
for file in filenames}
#Use: d["some_file_name.xls"]
如果您仍然想使用文件编号,那么您需要一个列表,而不是字典:
l = [pd.read_excel(file, nrows = 32, usecols="A:D").fillna("")
for file in filenames]
#Use: l[0]