Objekt in Liste speichern und lesbar ausgeben

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

@DeaD_EyE: der OP hat keine Liste in einer Klasse, sondern eine Liste mit Elementen.
Benutzeravatar
Perlchamp
User
Beiträge: 172
Registriert: Samstag 15. April 2017, 17:58

@ Cortez :
ich würd's auch auspacken (unpacking) :
hier mal ein Beispiel:

Code: Alles auswählen

>>> personen = [("Stefan", 29), ("Uta", 45), ("Rainer", 68)]
>>> for name, alter in personen :
           print(name, alter)

Stefan 29
Uta 45
Rainer 68
>>>
Du kannst ja nach for ... mit Bedingungen arbeiten, und, und, und. Ich würde Tupel in der Liste benutzen, aber Liste in Liste ginge notfalls auch:

Code: Alles auswählen

>>> personen = [["Stefan", 29], ["Uta", 45], ["Rainer", 68]]
>>> for name, alter in personen :
           print(name, alter)

Stefan 29
Uta 45
Rainer 68
>>>
wer lesen kann ist klar im Vorteil ;-)
es gibt keine Probleme, sondern nur Lösungen !
Bildung ist die Freude auf mich selbst !
Benutzeravatar
__blackjack__
User
Beiträge: 13004
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Perlchamp: Aber es gibt doch bereits eine `Person`-Klasse und eine Liste mit Objekten von diesem Typ. Warum jetzt wieder Tupel? Das kann man bei zwei Werten vielleicht noch machen, aber es gibt ja mindestens vier laut OP und da fangen Tupel dann langsam an unhandlich und kryptisch zu werden, und sind auch schwerer zu ändern, weil man wenn man dann doch noch etwas hinzufügen oder entfernen möchte, immer den ganzen Code durchgehen und alle Stellen anpassen muss wo mit den Tupeln gearbeitet wird. Oder man hat wieder magische Indexwerte im Code.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Benutzeravatar
Perlchamp
User
Beiträge: 172
Registriert: Samstag 15. April 2017, 17:58

@ _blackjack_ :
cortez schrieb:
ich habe ein Programm, in dem Werte aus einer Textdatei gelesen werden [...] Ein letztes Problem hätte ich noch: Wie kann ich auf die einzelnen Elemente eines in einer Liste gespeicherten Objektes zugreifen, wenn Indexing nicht unterstützt wird?
=> hatte vergessen, dass er eine Klasse benutzt
und schlußendlich habe ich überlesen:
Ich möchte im Prinzip die einzelnen Datensätze erstmal auslesen, um dann mit Ihnen zu arbeiten (Werte zusammenzählen/ändern usw.)
=> da Tupel unveränderbar sind ist das hier natürlich nicht angebracht.

tja, wer lesen kann ist klar im Vorteil, ich Thor !
wer lesen kann ist klar im Vorteil ;-)
es gibt keine Probleme, sondern nur Lösungen !
Bildung ist die Freude auf mich selbst !
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

@Perlchamp: es ging __blackjack__ nicht um das Verändern des Inhalts der Tuple, sondern, dass man das Programm verändern muß, also einen weiteren Wert hinzufügen, was dann bedeutet, an allen Stellen, in denen Unpacking verwendet wird, den neuen Wert auch hinzuzufügen.
Benutzeravatar
Perlchamp
User
Beiträge: 172
Registriert: Samstag 15. April 2017, 17:58

@ sirius3:
danke, wieder etwas gelernt :-)
wer lesen kann ist klar im Vorteil ;-)
es gibt keine Probleme, sondern nur Lösungen !
Bildung ist die Freude auf mich selbst !
Antworten