Skip to content

Instantly share code, notes, and snippets.

@gmaze
Last active March 19, 2020 15:28
Show Gist options
  • Save gmaze/509df67e6342394fbb266471eb984b16 to your computer and use it in GitHub Desktop.
Save gmaze/509df67e6342394fbb266471eb984b16 to your computer and use it in GitHub Desktop.
Passing/merging options from function to subfunctions
def base_fct(**kwargs):
defaults = {'sharey':'row', 'dpi':80, 'facecolor':'w', 'edgecolor':'k'}
options = {**defaults, **kwargs}
return options
def fct(**kwargs):
defaults = {'sharey':'cols'}
return base_fct(**{**defaults, **kwargs})
print("Default base options:\n", base_fct())
print("Default fct options:\n", fct())
print("Modified fct options:\n", fct(dpi=120))
@gmaze
Copy link
Author

gmaze commented Mar 19, 2020

This is a pattern I use a lot and keep looking around how to do it !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment