私の例のデータ:Pythonは
list_of_dict =[{'cena': 23, 'nazwa': 'item1', 'param': 'pampam'},
{'cena': 26, 'nazwa': 'item2', 'param': 'iko' },
{'cena': 26, 'nazwa': 'item2a','param': 'ik2' },
{'cena': 26, 'nazwa': 'item2b','param': 'ik2' },
{'cena': 17, 'nazwa': 'item3', 'param': 'etr' },
{'cena': 17, 'nazwa': 'item4', 'param': 'asdf' }]
conditions = {'cena': 26, 'param': 'ik2' }
私が試した:
if conditions in list_of_dict:
do_something()
それは動作しますが、場合にのみ、全体の条件のdict(すべてのキー)はdictリストのものと一致します。
In [1]: exampleSet = [{ 'type' : 'type1', 'k' : 'kval'},
...: { 'type' : 'type2', 'k' : 'kv2' },
...: { 'type' : 'type2', 'k' : 'k3' },
...: { 'type' : 'type3', 'k' : 'k3' }]
...:
...: conditions = { 'type' : 'type1', 'k' : 'kval' }
...:
...:
...: conditions in exampleSet
...:
Out[1]: True
In [2]: conditions = { 'type' : 'type1' }
In [3]: conditions in exampleSet
Out[3]: False
私はキー値pと辞書を照合しようとしていますが
[{ 'type' : 'type2', 'k' : 'kv2' },
{ 'type' : 'type2', 'k' : 'k3' }]
結果:そう
In [4]: exampleSet = [{ 'type' : 'type1', 'k' : 'kval'},
...: { 'type' : 'type2', 'k' : 'kv2' },
...: { 'type' : 'type2', 'k' : 'k3' },
...: { 'type' : 'type3', 'k' : 'k3' }]
...:
...: conditions = { 'type' : 'type2' }
...:
...: my_wanted_match(exampleSet, conditions)
(かかわらず、値/不特定のものの存在)、指定された放映する返すことがあります。
誰でも、これを達成するためのヒントを教えていただけますか?
私はあなたを理解していれば、私は一度、基本的にはまったく同じ問題に沸く質問に答え問題が正しく:[pythonのfindWhere()の動作をエミュレート](http://stackoverflow.com/questions/23553060/emulating-the-behavior-of-findwhere-in-python/23553240) –