PYTHON
Shallow Merging Multiple Dictionaries
Efficiently combine multiple dictionaries into a single new dictionary using Python's dictionary unpacking operator for shallow merging configurations or data.
# Dictionary unpacking (Python 3.5+)
dict1 = {'a': 1, 'b': 2}
dict2 = {'b': 3, 'c': 4}
dict3 = {'d': 5}
merged_dict = {**dict1, **dict2, **dict3}
# merged_dict will be {'a': 1, 'b': 3, 'c': 4, 'd': 5}
# Note: 'b' from dict2 overwrites 'b' from dict1
print(f"Dictionary 1: {dict1}")
print(f"Dictionary 2: {dict2}")
print(f"Dictionary 3: {dict3}")
print(f"Merged Dictionary: {merged_dict}")
# Example with default settings and user overrides
default_settings = {'theme': 'dark', 'font_size': 14, 'notifications': True}
user_settings = {'font_size': 16, 'notifications': False}
final_settings = {**default_settings, **user_settings}
# final_settings will be {'theme': 'dark', 'font_size': 16, 'notifications': False}
print(f"Default Settings: {default_settings}")
print(f"User Settings: {user_settings}")
print(f"Final Settings: {final_settings}")
How it works: This snippet demonstrates how to shallowly merge multiple dictionaries using the dictionary unpacking operator (`**`) introduced in Python 3.5. When dictionaries are unpacked into a new dictionary literal, if keys overlap, the value from the rightmost dictionary in the unpacking sequence takes precedence. This is highly useful for combining configurations where user-defined settings should override default values.