|
|
|
|
|
by stevesimmons
646 days ago
|
|
For anyone wanting some more explanation, ChainMap can be used to build nested namespaces from a series of dicts without having to explicitly merge the names in each level. Updates to the whole ChainMap go into the top-level dict. The docs are here [0]. Some simple motivating applications: - Look up names in Python locals before globals before built-in functions: `pylookup = ChainMap(locals(), globals(), vars(builtins))` - Get config variables from various sources in priority order: `var_map = ChainMap(command_line_args, os.environ, defaults)` - Simulate layered filesystems - etc [0] https://docs.python.org/3/library/collections.html#collectio... |
|