请仔细阅读。这不是先前解决的相关Stack问题的重复。
如何在函数环境中获取传递给函数的参数的名称字符串文字?
的伪代码:
def myfunc(model, arg_is_list, num):
# define magical_command that gets args NAMES
print 'Your passed args are:', magical_command_return
# use arg_is_list, use model...
理想的解决方案:
$mylist={}
$mylist=[1,2,3]
$linear = some_library_model
$myfunc(model='linear', arg_is_list='mylist', num=2)
>Your passed args are: 'linear', 'mylist', '2'
我非常感谢能得到的任何帮助。感谢。
答案 0 :(得分:1)
inspect
模块提供了这种内省功能:
>>> import inspect
>>>
>>> def myfunc(model, arg_is_list, num):
... print 'Your passed args are:',
... arg_names = inspect.getargspec(myfunc).args
... for name in arg_names:
... print repr(locals()[name]),
...
>>> myfunc(model='the model', arg_is_list='arrrggg', num=42)
Your passed args are: 'the model' 'arrrggg' 42