다음과 같은 qux.py 스크립트가 있다고 가정합니다.
#qux.py def aMethod1(arg1, arg2): pass def aMethod2(arg1,arg2, arg3, arg4, arg5): pass
이 스크립트의 내용에 액세스할 수 없다고 가정하면 다음과 같이 주어진 함수에서 인수의 수를 찾을 수 있습니다.
파이썬 함수 내에서 매개변수 이름 목록을 찾기 위해 inspect 모듈을 가져오고 주어진 스크립트 qux.py도 가져옵니다.
inspect.getargspec(foo)를 사용하여 foo() 함수의 모든 인수 목록을 얻습니다. 이 목록의 첫 번째는 다시 일반 인수 목록입니다. x =inspect.getargspec(foo)인 경우 인수의 수는 len(x[0])에서 찾습니다.
#fubar.py import qux import inspect x=inspect.getargspec(qux.aMethod1) y=inspect.getargspec(qux.aMethod2) print(llen(y[0]))
터미널에서 이 스크립트 실행
$ python fubar.py
다음 출력을 얻습니다.
5