Les fonctions Python sont généralement appelées en utilisant leurs noms. Cependant, vous pouvez également utiliser des chaînes pour appeler des fonctions. Pour ce faire, utilisez locals() et globals().
Dans cet exemple, nous allons apprendre à appeler deux fonctions à l'aide de chaînes -
def demo1(): print('Demo Function 1') def demo2(): print('Demo Function 2') locals()['demo1']() globals()['demo2']()
Demo Function 1 Demo Function 2
Dans cet exemple, nous avons créé une classe Example dont la fonction xyzuvw() accepte les arguments et les imprime. La fonction globals() est utilisée pour référencer cette classe. Ensuite, getattr() est utilisé pour référencer la fonction dans la classe d'exemple xyzuvw() -
class Example: def __init__(self): pass def xyzuvw(self, arg): print('Called xyzuvw({})'.format(arg)) # Using globals() k = globals()['Example']() func = getattr(k, 'xyzuvw') func('demo argument') # Using getarr() getattr(globals()['Example'](), 'xyzuvw')('demo argument')
Called xyzuvw(demo argument) Called xyzuvw(demo argument)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!