在Python中,我有一個字典列表:在詞典列表中,基於一個鍵/值匹配字典嗎?
mylist = [ { 'name': 'James', 'school': 'UCLA', 'date_joined': 2001 },
{ 'name': 'Jack', 'school': 'UCLA', 'date_joined': 2001 },
{ 'name': 'Fisher', 'school': 'NYU', 'date_joined': 2003 }]
如何檢查有一定的字典是否匹配現有記錄,只根據姓名和學校的鍵/值?
所以:
example1 = { 'name': 'James', 'school': 'UCLA', 'date_joined': 2007 }
example1 = { 'name': 'James', 'school': 'UCLA', 'date_joined': 2001 }
應該都匹配,但
example3 = { 'name': 'James', 'school': 'MIT', date_joined': 2001 }
不應該。
有明顯:
for m in myList:
if (m['name']==example['name'] and m['school']==example['school']):
match_found = True
continue
但有一個更緊湊的方式?
,但你可能會考慮使用[不同數據結構](http://stackoverflow.com/questions/6479377/in-list-of-dicts-match-dict-based-on-one-key-value/6479532#6479532)。 – senderle