【Python学习】—字典的差集
一、
if __name__ == '__main__':
a_list = [{'a': 1}, {'b': 2}, {'c': 3}, {'d': 4}, {'e': 5}]
b_list = [{'a': 1}, {'b': 2}, {'g': 3}]
ret_list = []
for item in a_list:
if item not in b_list:
ret_list.append(item)
for item in b_list:
if item not in a_list:
ret_list.append(item)
print(ret_list)
二、
if __name__ == '__main__':
a_list = [{'a': 1}, {'b': 2}, {'c': 3}, {'d': 4}, {'e': 5}]
b_list = [{'a': 1}, {'b': 2}, {'g': 3}]
diff_list = [item for item in a_list if item not in b_list] + [item for item in b_list if item not in a_list]
print(diff_list)
uni_list = [item for item in a_list if item in b_list] + [item for item in b_list if item in a_list]
print(uni_list)
c_list = a_list + b_list
print(c_list)
上述代码中包含了列表推导式(list comprehension)
强大的List Comprehension (列表推导式)是Python中必须知道的概念。然而对于初学者来说是最具挑战性的。掌握这个概念将会在两个方面帮助你:
- 应该写更短和更高效率的代码
- 代码应该执行的更快
List Comprehension (列表推导式)比for循环快35%,比map快45% 。