1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| dict1 = { "a": 1, "b": 2, "c": 3 }
dict2 = { "a": 1, "b": 2 }
dict3 = { "a": 1, "b": 3 }
dict4 = { "a": 1, "d": 4 }
dict5 = { "a": 1, "b": 2, "c": 3 }
def dict_contains(c_dict, f_dict): return all(item in f_dict.items() for item in c_dict.items())
if __name__ == '__main__': print("====== Python3+使用 d1.items() <= d2.items() =======") print("dict1包含dict2:", dict2.items() <= dict1.items()) print("dict1包含dict3:", dict3.items() <= dict1.items()) print("dict1包含dict4:", dict4.items() <= dict1.items()) print("dict1包含dict5:", dict5.items() <= dict1.items()) print("dict2包含dict1:", dict1.items() <= dict2.items()) print("====== Python2使用 all(item in d2.items() for item in d1.items()) =======") print("dict1包含dict2:", dict_contains(dict2, dict1)) print("dict1包含dict3:", dict_contains(dict3, dict1)) print("dict1包含dict4:", dict_contains(dict4, dict1)) print("dict1包含dict5:", dict_contains(dict5, dict1)) print("dict2包含dict1:", dict_contains(dict1, dict2))
|