Распечатать список параметров функции в Python - PullRequest
4 голосов
/ 16 марта 2009

Есть ли способ распечатать список параметров функции? Например:

def func(a, b, c):
  pass

print_func_parametes(func)

Который будет производить что-то вроде:

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

Ответы [ 3 ]

17 голосов
/ 16 марта 2009

Используйте модуль проверки.

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

Первая часть возвращаемого кортежа - это то, что вы ищете.

6 голосов
/ 16 марта 2009

Прочитайте источник. Шутки в сторону. Программы и библиотеки Python предоставляются в качестве источника. Вы можете прочитать источник.

2 голосов
/ 16 марта 2009

Вы также можете попробовать встроенную функцию 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

Большинство модулей имеют как минимум какую-то встроенную документацию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...