Die Antwort war mir gestern klarer, da ich meine Frage wieder unpräzise gestellt habe und die Antwort ja gepasst hatHyperion hat geschrieben:Also wenn wir bei der Terminologie dieselbe Sprache sprechen (s.o.), dann muss man das sogar tun, wenn man denn mit verschachtelten Klassen arbeiten will! In meinem Beispiel hält das Attribut students eben eine Liste von Instanzen der Klasse Student. Prinzipiell wird eine Vernestelung immer auf diese Weise erreicht (neben Listen eben auch durch andere Container).Zando hat geschrieben: Wäre es auch guter Programmierstil Instanzen von Klassen in anderen Klassen zu verwenden?
Ich meinte eher: Wäre es guter Programmierstil die Instanzen auch in den anderen Klassen zu erzeugen? Ihr (Rebecca und du) erzeugt die Instanzen ja außerhalb der Klassen (anderen Instanzen?), während BlackJack sie innerhalb erzeugt.
Falls ich wieder sprachliche Probleme habe, hier ein Beispiel:
"ihr" macht es so:
Code: Alles auswählen
class Erste:
pass
class Zweite:
def __init__(self, wasvomersten):
blablablub...
ausserhalb = Erste()
zweite = Zweite(ausserhalb)
Code: Alles auswählen
class Erste:
pass
class Zweite:
def __init__(self):
self.innerhalb = Erste()
BlackJacks Lösung ist eher dafür falls alle Zweite-Objekte(Instanzen) DASGLEICHE Erste-Objekt enthalten sollen und "eure" eher falls es verschiedene Erste-Objekte gibt, die in den verschiedenen Zweite-Objekten verwendet werden sollen?
So long
Carsten
edit: vor "innerhalb" im Quellcode noch ein "self" gesetzt...