Как распечатать, какие аргументы требует / разрешает функция Python? - PullRequest
3 голосов
/ 22 февраля 2010

Предположим, у меня есть функция, и я хочу распечатать аргументы, которые она принимает. Как я могу это сделать?

Ответы [ 4 ]

6 голосов
/ 22 февраля 2010

Используйте inspect.getargspec(), чтобы узнать.

2 голосов
/ 22 февраля 2010

Я вижу, что кто-то уже предложил ответ, который я имел в виду, поэтому я предложу чисто практический. IDLE выдаст вам параметры функции в виде «всплывающей подсказки».

Это должно быть включено по умолчанию; всплывающая подсказка появится сразу после ввода имени функции и левой круглой скобки.

Чтобы сделать это, IDLE просто получает доступ к строке документа функции, поэтому он покажет всплывающую подсказку для любой функции python - стандартной библиотеки, сторонней библиотеки или даже функции, которую вы создали ранее и которая находится в доступном пространстве имен на холостом ходу.

Очевидно, что это работает только тогда, когда вы работаете в интерактивном режиме в IDLE, хотя оно имеет то преимущество, что не требует дополнительного вызова функции.

0 голосов
/ 22 февраля 2010

Функция help делает это.

Все, что вам нужно сделать, это вставить строки документации для ваших функций.

0 голосов
/ 22 февраля 2010

если вы используете IPython (как вам абсолютно необходимо), используйте

foo?

чтобы увидеть документацию, включая то, что ожидает функция, и:

foo??

для просмотра вышеуказанной документации плюс исходный код (если имеется)

...