Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

런타임에 Python 함수를 어떻게 정의할 수 있습니까?

<시간/>

우리는 파이썬 함수를 정의하고 다음과 같이 types.FunctionType() 함수를 사용하여 types 모듈을 가져와 런타임에 실행할 수 있습니다.

이 코드는 표시된 대로 python 프롬프트에서 작동합니다. 먼저 types 모듈을 가져옵니다. 그런 다음 dynf=… 명령을 실행합니다. 그런 다음 dynf() 함수를 호출하여 표시된 대로 출력을 얻습니다.

>>> 유형 가져오기>>> dynf =types.FunctionType(compile('print "진짜 작동"', 'dyn.py', 'exec'), {})>>> dynf()정말 작동