Source code for covsirphy.util.argument

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from inspect import signature


[docs]def find_args(func_list, **kwargs): """ Find values of enabled arguments of the function from the keyword arguments. Args: func_list (list[function] or function): target function kwargs: keyword arguments Returns: dict: dictionary of enabled arguments """ if not isinstance(func_list, list): func_list = [func_list] enabled_nest = [ list(signature(func).parameters.keys()) for func in func_list ] enabled_set = set(sum(enabled_nest, list())) enabled_set = enabled_set - set(["self", "cls"]) return {k: v for (k, v) in kwargs.items() if k in enabled_set}