使用Python 在清單中搜尋字典
以字典列表為例:
dicts = [ {"name": "Tom", "age": 10}, {"name": "Mark", "age": 5}, {"name": "Pam", "age": 7}, ]
問題:
如何搜尋並檢索包含「name」鍵等於「Pam」?match = next(item for item in dicts if item["name"] == "Pam") print(match) # {"name": "Pam", "age": 7}解決方案:
使用生成器表達式,您可以迭代字典列表並過濾出您需要的字典:
match = next((item for item in dicts if item["name"] == "Pam"), None) if match: print(match) else: print("No matching dictionary found.")處理不存在:
如果您要搜尋的名稱可能不存在於清單中,您可以使用預設參數的next() 函數:
index = next((i for i, item in enumerate(dicts) if item["name"] == "Pam"), None) print(f"Matching dictionary at index {index}")
以上是如何在Python字典列表中有效率地搜尋特定字典?的詳細內容。更多資訊請關注PHP中文網其他相關文章!