Liste filtern

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.
Antworten
alexm
User
Beiträge: 3
Registriert: Freitag 20. Dezember 2013, 19:12

Hi!

Als Python-Neuling habe ich bei folgender Aufgabe meine Probleme: ich habe eine Liste in der Form:

Code: Alles auswählen

my_list = ['1\tNachname\tVorname\tAlter\tAdresse', '2\tNachname\tVorname\tAlter\tAdresse', ..., 'n\tNachname\tVorname\tAlter\tAdresse', ' ' ]
Aus dieser Liste soll ich eine neue Liste erstellen, welche nur die ersten beiden Attribute (also Zahl und Nachname) enthält. Hat jemand eine Idee, wie dies am Besten gelöst werden könnte? Ich habe schon versucht, per Index auf alle einzelne Zeichen zuzugreifen und solange zeichenweise zu kopieren, allerdings funktioniert das nicht.

mfg
BlackJack

@alexm: Welches Grundlagentutorial hast Du denn zum lernen benutzt? Und hast Du Dir die Methoden auf Zeichenketten in der Dokumentation mal angeschaut?
alexm
User
Beiträge: 3
Registriert: Freitag 20. Dezember 2013, 19:12

Als Grundlagen haben wir die letzten Monate mathematische Probleme in Sage gelöst, und sind jetzt auf "reines" Python umgestiegen.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Ich würde die Daten erst einmal über das ``csv``-Modul einlesen; dann hast Du die Zeichenketten schon aufgesplittet ;-) (Oder sollte ich mich irren und die Daten liegen *wirklich* so vor)
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
alexm
User
Beiträge: 3
Registriert: Freitag 20. Dezember 2013, 19:12

doch, die Daten liegen genau so wie beschrieben in einer Liste vor (ist die Angabe, darf nicht verändert werden).
BlackJack

@alexm: Naja und das reine Python lernst Du mit welchem Tutorial? Hast Du das Tutorial in der Python-Dokumentation schon mal durchgearbeitet? Zumindest bis zu dem Punkt wo genug Listen- und Zeichenkettenverarbeitung dran war, dass Du das Problem mit Hilfe der Dokumentation in Angriff nehmen kannst.

Brich das Problem in kleinere Teilproblem runter. Zum Beispiel könntest Du eine Funktion schreiben, welche die gewünschte Umwandlung für *ein* Listenelement erledigt. Dazu musst Du Dir die Methoden auf Zeichenketten anschauen und überlegen welche Dir bei der Lösung helfen können. Wenn Du die Funktion geschrieben hast, ist die Lösung nur noch einen `map()`-Aufruf entfernt. :-)
Benutzeravatar
/me
User
Beiträge: 3556
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

alexm hat geschrieben:Ich habe schon versucht, per Index auf alle einzelne Zeichen zuzugreifen und solange zeichenweise zu kopieren, allerdings funktioniert das nicht.
Ich gehe mal davon aus, dass du weißt, wie man eine Liste durchläuft. Die einzelnen Elemente kannst du dann mit split behandeln.
Antworten