В качестве альтернативы рутину в атрибутах функции вы можете использовать модуль проверки для более дружественного интерфейса:
Для интерпретаторов Python 3.x:
import inspect
spec = inspect.getfullargspec(myFunction)
Тогда spec является объектом FullArgSpec
с такими атрибутами, как args
и defaults
:
FullArgSpec(args=['arg1'], varargs=None, varkw=None, defaults=('a default value',), kwonlyargs=[], kwonlydefaults=None, annotations={})
Некоторые из этих атрибутов недоступны в Python 2, поэтому, если вам придется использовать старую версию, inspect.getargspec(myFunction)
даст вам аналогичное значение без функций Python 3 (getargspec
также работает в Python 3, но не рекомендуется с тех пор, как Python 3.0, поэтому не используйте его):
import inspect
spec = inspect.getargspec(myFunction)
Тогда spec является объектом ArgSpec
с такими атрибутами, как args
и defaults
:
ArgSpec(args=['arg1'], varargs=None, keywords=None, defaults=('a default value',))