ich loope über eine Liste mit Strings
Code: Alles auswählen
for i in liste:
print i
neueinstanz = eine.neueinstanz()
Danke.
Code: Alles auswählen
for i in liste:
print i
neueinstanz = eine.neueinstanz()
Code: Alles auswählen
instanzen = []
for element in liste:
print element
instanzen.append(NeueInstanz())
Jeder String repräsentiert eine Datenstruktur, für die eine Instanz eines Objekts benötigt wird.Bitzkit hat geschrieben:was hast du genau vor ?
Ok das habe ich im Prinzip gesucht. Allerdings muss ich rückschließen können, welche Instanz zu welchem String in der anderen Liste gehört. Das müsste aber über die Position in der Liste gelingen, oder?du könntest für jedes Element ne neue Instanz machen und das in einer list oder dict speichern.
Code: Alles auswählen
dict((name, Spam(parameter, hier, name)) for name in liste)
Hmm also ich habe eine Liste mit Strings. Jeder String repräsentiert eine Datei im aktuellen Verzeichnis, in der das Programm ausgeführt wird. Jede dieser Dateien soll nun geparst und auf bestimmte Eigenschaften hin untersucht werden - dazu habe ich eine Klasse geschrieben, die die nötigen Attribute und Methoden mitbringt.EyDu hat geschrieben:Oder besser: erzähl uns genauer was du vor hast und etwas Kontext dazu. Es gibt mit großer Wahrscheinlichkeit eine schönere Lösung.
Sicher. Allerdings müßtest Du dann immer alle Instanzen anfassen, wenn Du eine bestimmte in Abhängigkeit vom Dateinamen suchst. Da wäre dann ein dict geeigneter.BastiL hat geschrieben: Wo ich das hier schreibe komt mir gerade die Idee, den Dateinamen als Attribut in der Klasse mitzusichern, dann würde mir eine einfache Liste genügen.
Code: Alles auswählen
#dict mit deinen Dateien als Key und die Datenstruktur als Value
# z.B. {'test.txt': Instanz der Datenstruktur,}
datenstrukturen = {}
for datei in liste:
print datei
datenstrukturen[datei] = Datenstruktur(datei)
Code: Alles auswählen
datenstruktur[datei].load()
datenstruktur.was_auch_immer()