[英]Use IF statement to search json file
我需要搜索此json文件並僅打印Y狀態的peole:
[[{"Name": "person1", "Status": "Y"}], [{"Name": "person2", "Status": "N"}], [{"Name": "person3", "Status": "Y"}]]
我可以打開文件並顯示數據,但是需要在其中搜索。 有人可以幫我完成這個陳述嗎? 需要看一下鍵值嗎? 狀態並僅打印帶有Y的兩個人
for name in OpenFile:
**# if Status == Y what do I do here? :**
print ("Name : " +name[i]['Name'])
print ("Status : " +name[i]['Status'])
您需要遍歷列表,從中提取字典並檢查鍵“狀態”:
for element in OpenFile:
ele = element[0] # grab the dict
if ele.get('Status') == 'Y':
print 'Name: {}'.format(ele.get('Name')
print 'Status: {}'.format(ele.get('Status')
您的OpenFile
對象是列表列表,位於dict結構中。 因此,您要處理列表中的第一個對象(即字典),然后執行檢查。 您可以使用ele.get()
看起來您正在引用[i],而name
是您的迭代器。 將其更改為如下所示:
for name in OpenFile:
**# if Status == Y what do I do here? :**
print ("Name : " +name['Name'])
print ("Status : " +name['Status'])
同時,您的json格式的數據看起來像這樣的格式: List[list[dict],list[dict],list[dict],]
因此僅導航到Name
值是這樣的:
print(OpenFile[0][0]['Name'])
嘗試返回是否為person1,然后基於此下一個if語句。
其他調試工具:使用type()來確定json的格式:
type(OpenFile)
type(OpenFile[0])
type(OpenFile[0][0])
等等,請使用錯誤找出json的格式
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.