Defining a Python function at runtime
Last Updated :
29 Dec, 2020
In Python,we can define a python function at runtime execute with the help of FunctionType(). First we import types module then perform compile() function and pass parameter exec and after that with the help FunctionType() define the function at runtime.
Example 1: Function to print GEEKSFORGEEKS.
Python3
from types import FunctionType
f_code = compile ( 'def gfg(): return "GEEKSFORGEEKS"' , "<string>" , "exec" )
f_func = FunctionType(f_code.co_consts[ 0 ], globals (), "gfg" )
print (f_func())
|
Output:
GEEKSFORGEEKS
Example 2: Function to add 2 numbers.
Python3
from types import FunctionType
f_code = compile ( 'def gfg(a, b): return(a + b) ' , "<int>" , "exec" )
f_func = FunctionType(f_code.co_consts[ 0 ], globals (), "gfg" )
val1 = 3999
val2 = 4999
print (f_func(val1, val2))
|
Output:
8998
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...