Ich arbeite an einem Projekt, das ich einige Objekte dynamisch aus einer Klasse erstellen muss. Ich fordere niemanden auf, es zu lösen, sondern zeige mir nur die richtige Richtung. Ein Beispiel wäre, wenn ich mit Hunden arbeiten würde.Versuch, ein Objekt aus einer Klasse durch Aufruf einer Funktion zu erstellen
Ich möchte jedoch eine Funktion haben, dass ich diese Informationen weitergeben kann, die ein globales Objekt erstellen würde. Die Funktion würde wie folgt aussehen:
def create_dog(name, age, gender):
name = Dog(name,age, gender)
return(name)
So theoretisch, wenn ich den Namen „Jack“ an die Funktion übergeben hätte ich ein Objekt global „Jack“ aus der Klasse genannt. Ich versuche nur, einen guten Weg zu finden, dies zu tun, wenn überhaupt. Wenn das komplett gegen Python ist werde ich einen anderen Weg finden aber ich sitze hier fest. Ich habe auch über das Verschachteln der Klasse innerhalb meiner Funktion nachgedacht, aber der Namespace wird nicht in global gehen.
Gibt es einen Grund für eine Reihe von globalen Objekten? Im Allgemeinen ist es am besten, wenn möglich globale Objekte zu vermeiden, da der Code sehr schwer zu debuggen sein kann. – mxdg
Nicht 100% sicher, was Sie fragen, aber mögliche Duplikate von [Wie mache ich variable Variablen in Python?] (Http://stackoverflow.com/q/1373164/953482). Kurze Version: Es ist fast nie eine gute Idee, eine Funktion 'create_dog (" Jack ", 5," männlich ") zu haben, die eine Variable im globalen Bereich erstellt, deren Name" Jack "ist. – Kevin