python wie man die dynamische Klasse im Modul registriert

8

Ich habe Modul foo, in diesem Modul habe ich dynamisch Klasse erstellt:

%Vor%

Nun möchte ich erreichen, dass diese neue dynamische Klasse als eine Klasse dieses Moduls sichtbar wird:

%Vor%

Weißt du wie das geht?

    
mnowotka 29.11.2012, 11:19
quelle

1 Antwort

13

Sie können Bar = superClassCreator() in foo (auf Modulebene) verwenden.

Alternativ können Sie aus einem anderen Modul Bar als Attribut für foo hinzufügen:

%Vor%

oder, wenn der Name der generierten Klasse entnommen werden muss:

%Vor%

Innerhalb des Moduls foo können Sie es direkt auf globals() :

setzen %Vor%

mit einer optionalen del -Anweisung, um den generatedClass - Namen wieder aus dem Namespace zu entfernen.

    
Martijn Pieters 29.11.2012, 11:21
quelle