在Python中打印出函数参数列表

时间:2009-03-15 22:24:37

标签: python

有没有办法打印出函数的参数列表? 例如:

def func(a, b, c):
  pass

print_func_parametes(func)

这会产生类似的东西:

["a", "b", "c"]

3 个答案:

答案 0 :(得分:17)

使用检查模块。

>>> import inspect
>>> inspect.getargspec(func)
(['a', 'b', 'c'], None, None, None)

返回元组的第一部分就是你要找的东西。

答案 1 :(得分:6)

阅读来源。认真。 Python程序和库作为源提供。你可以阅读来源。

答案 2 :(得分:2)

您也可以尝试使用内置的help()函数,它不仅会为您提供已命名参数的列表,还会为您提供func()的说明(如果您提供了文档字符串):

>>> def func(a, b, c):
...     """do x to a,b,c and return the result"""
...     pass
... 
>>> help(func)

给你

    
Help on function func in module __main__:

func(a, b, c)
    do x to a,b,c and return the result

大多数模块至少提供了某种内置文档。