我有 .xlsx 檔案,并將其轉換為 JSON。我正在使用 python 從這個 json 檔案中獲取資料。例如,我可以搜索 Build#,然后獲得相應的級別,但是當我搜索“14H0232”或“14H4812”中的值時,它會引發 KeyError。
'''
import json
f = open('try.json')
data = json.load(f)
input= input('Enter the value: ')
for i in data['F6']:
if i['14H0232'] == input:
print(i['LEVEL'])
f.close()
'''
json 檔案的片段。
'''
{
"F6": [
{
"LEVEL": "2.0.6.0",
"ID": "dataID",
"Build#": "9",
"prod/dev": "prod ",
"14H4812": "data1\r\ndata2",
"14H4826": "data",
"14H4813": "data1\r\ndata2"
}
],
"F5": [
{
"LEVEL": "2.0.5.1",
"ID": "dataID",
"Build#": "18",
"prod/dev": "prod",
"14H0232": "data1: data1\r\ndata2: data2\r\ndata3: data3",
"14H12321": "data1\r\ndata2"
}
],
"F4": [
{
"LEVEL": "2.0.4.1",
"ID": "dataID",
"Build#": "18",
"prod/dev": "prod",
"14H0232": "data1: data1\r\ndata2: data2\r\ndata3: data3",
"14H12321": "data1\r\ndata2"
}
]
}
'''
uj5u.com熱心網友回復:
問題出在你的回圈中。當您嘗試訪問“14H0232”的值時,它在您的 json 檔案中不存在。我認為“Build#”的情況有所不同,因為關鍵總是在那里。您共享的示例也未顯示 F6 具有您指定的 ID 的鍵。因此,為了避免此類錯誤,您可以將“if”陳述句放在 try 塊中并捕獲錯誤。
try:
if i['14H0232'] == input:
print(i['LEVEL'])
except KeyError:
print("The key is not found but the code continues to execute")
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/403336.html
標籤:
