我在Python中使用字典并尝试引用其中一个数据类别,但是在运行代码时我得到了一个keyerror。
“Restock_Item”将是一个八位数字,例如“12345670”,它在字典中,所以使用
stock[restock_item]['STOCK_LEVEL']
它会像这样引用字典:
stock[12345670]['STOCK_LEVEL']
但是这样做时我得到了错误:
KeyError: 12345670
以下是代码:
restock_item = input("\nPlease enter the gtin code of the product you wish to restock. ")
if restock_item.isdigit() == True:
restock_level = input("How many items would you like to restock? ")
while restock_item.isdigit() == True:
restock_item = int(restock_item)
newStockLevel = int(stock[restock_item]['STOCK_LEVEL']) # This is the line that gets the key error
newStockLevel = newStockLevel + restock_level
stock[restock_item]['STOCK_LEVEL'] = newStockLevel
答案 0 :(得分:0)
已在评论中解决:
当您从文件中检索字典时,您是否也将int()应用于此键?
12345670和“12345670”不是等效键。 - jasonharper是的我只是想也许这就是原因而且我解决了问题,感谢帮助:)我在使用它之前将变量转换为int - Heather Lara