Defining a Python function at runtime
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
Last Updated :
29 Dec, 2020
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...