Textfile mit Python durchsuchen

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
swissgr
User
Beiträge: 3
Registriert: Freitag 5. April 2013, 10:19

Hallo zusammen :)

Bin neu hier und noch nicht so versiert in Python.
Ich sollte aus einem Textfile (dump) die Namen der User auslesen können. Es sollte demnach in einer Schlaufe sein bis alle ausgelesen sind und nachher vieleicht fürs erste in ein anderes textfile gespeichert werden. Die Namen befinden sich immer hinter einer Zeichenkette, also z.b. "Name, Vorname: Muster Hans" also ich müsste dann immer nur direkt den Namen, Muster Hans, haben um Ihn abzuspeichern. Also sowas wie "Gib mir alle Namen die sich hinter "Name, Vorname: " befinden aus. In diesem File befinden sich noch jede menge anderer Zeilen die ich nicht brauche.

Wüsste jemand eine Lösung wie ich nur alle Namen aus diesem File herausbekomme?? Wäre echt dankbar für ein bisschen hilfe.

Danke schon mal im Voraus und gruss
swissgr :D
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Hallo und willkommen im Forum!

Wie sieht denn dein bisheriger Lösungsansatz aus?
Das Leben ist wie ein Tennisball.
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

swissgr hat geschrieben:Also sowas wie "Gib mir alle Namen die sich hinter "Name, Vorname: " befinden aus. In diesem File befinden sich noch jede menge anderer Zeilen die ich nicht brauche.
Es ist ein wenig unklar, wie der genaue Aufbau der Datei aussieht. Ich gehe jetzt mal davon aus, dass es sich um einzelne Zeilen handelt von denen manche mit "Name, Vorname:" beginnen.

Die Datei öffnen und zeilenweise lesen kannst du, nehme ich an.

Ob eine Zeile mit einem bestimmten Wert anfängt kannst du mit startswith überprüfen. Um diese Zeile dann passend aufzuteilen (z.B. am Doppelpunkt) gibt es split.
swissgr
User
Beiträge: 3
Registriert: Freitag 5. April 2013, 10:19

Ich habe bisher nur die Möglichkeit gefunden Zeilen einzeln zu lesen und nach Textstellen zu suchen. Habe erst gerade mit Python begonnen :K

Genau so ist es die Datei ist Zeilenweise aufgebaut, z.B. so:
-Adresse: Haus 5
-Name: Hans Muster
-......
-...
---------------------
-Adresse: Haus 118
-Name: Peter Müller
-......
usw.

Genau das mit dem Öffnen und zeilenweise lesen habe ich hinbekommen.

Super, werde die beiden funktionen mal anschauen. Danke
swissgr
User
Beiträge: 3
Registriert: Freitag 5. April 2013, 10:19

Ich muss mich schnell korrigieren, ich kriege es hin die Datei zu öffnen und Zeilenweise zu lesen:

Code: Alles auswählen

lesen = open("dump.txt")
for line in lesen:
    print line.rstrip()
lesen.close()
Doch wie ich es nun hinkriege das es mir alle Zeilen (trennen kann ich es ja dann nachher mit split) ausgibt die eben so anfangen und die vlt in eine Variable schreibt, das kriege ich leider nicht ganz hin.

Habt Ihr da ne idee??

So habe ichs probiert, gibt mir aber nur eine Zeilennummer an:

Ich muss mich schnell korrigieren, ich kriege es hin die Datei zu öffnen und Zeilenweise zu lesen:

Code: Alles auswählen

lesen = open("dump.txt")
text = lesen.read()
lesen.close()
index = text.find("Name")

print index
Danke schon mal :D
BlackJack

@swissgr: Mit welchem Tutorial lernst Du denn die Python-Grundlagen? In der Python-Dokumentation ist eines, und für Anfänger wird oft Learn Python The Hard Way empfohlen.

Es macht wenig Sinn hier immer nur Häppchenweise die Syntax und Funktionen zu nennen die Du für den nächsten Minischritt innerhalb Deines Vorhabens benötigst, denn dann würden effektiv *wir* Dein Programm schreiben und es Dir letztendlich Stück für Stück diktieren. Du müsstest schon mal sebstständig, und unabhängig von Deinem konkreten zu lösenden Problem, die grundlegenden Datentypen und Kontrollstrukturen von Python lernen. Und mit *dem* Wissen dann an Dein Problem heran treten.
Antworten