L'exécution de code Python contenues dans une chaîne de caractères

Je suis en train d'écrire un moteur de jeu à l'aide de pygame et box2d, et dans le caractère builder, je veux être capable d'écrire du code qui sera exécuté sur les événements keydown.

Mon plan était d'avoir un éditeur de texte dans le caractère générateur de rapports qui vous permettent d'écrire du code similaire à:

if key == K_a:
    ## Move left
    pass
elif key == K_d:
    ## Move right
    pass

Je vais récupérer le contenu de l'éditeur de texte comme une chaîne de caractères, et je veux le code à exécuter dans une méthode dans cette méthode de Personnage:

def keydown(self, key):
    ## Run code from text editor

Quelle est la meilleure façon de le faire?

OriginalL'auteur Brad Zeis | 2009-06-18