Teile einer Textdatei suchen

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
Campionissimo
User
Beiträge: 102
Registriert: Montag 28. März 2011, 07:50

Hallo ich habe diese textdatei

Code: Alles auswählen

1:	0.0:10.1235	hallo (ja)	 	Ergebniss
2:	0.0:15.1465	Morgen (ja)	2	Ergebniss1
.
.
.
.



Zeile1:
    \t		    \t			\2t
Zeile2:
   \t		    \t		    \t      \t
Zeile1 und Zeile 2 sind die abstände zwischen den Teilen.
Hoffe die Zeichen stimmen, vielleicht weiss ja jemand wie man das auch raussbekommt welche zeichen zwischen den wörtern liegen.

Die Datei geht immer so weiter
Ich habs jetzt mal so probiert:

Code: Alles auswählen

import string
#woerter = {}

fobj = open("C:/Daten.txt", "r") 

for line in fobj: 
    line = line.strip() 
    zuordnung = line.split(" ")
    neueliste = zuordnung
    print neueliste[1]
    
    
    #print zuordnung[2]
    #a = str(line)
    #print a[0]
    if zuordnung[1] == "0.0:10.1235":
    #if zuordnung[1] == "Deutschland":
        print "juhu"
    else:
        pass#print "falsch"
Jetzt komm z.B. diese Fehlermeldung wenn ich print neueliste[8] sage

Code: Alles auswählen

print neueliste[1]
IndexError: list index out of range
Jetzt zu meiner Frage, wie kann ich die einzelnen Elemente an der richtigen Stelle abfragen.

Habs auch schion mit split"\t" probiert
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Beschreibung und Code sind verwirrend.

Der Fehler sagt aber deutlich, dass es das Element 1 (oder 8) in neueliste an der Stelle nicht gibt. Welchen Inhalt hat denn neueliste zu dem Zeitpunkt?
Campionissimo
User
Beiträge: 102
Registriert: Montag 28. März 2011, 07:50

Also, wenn ich z.B. element[1] Funktioniert es noch. Aber wenn ich erhöhe dann nicht mehr, aber beim print Befehl wird alles ausgegeben.
Sprich das gesuchte Element wird an der Console ausgegeben und danach die Fehlermeldung.

Irgendwie komisch.
ergebnis kommt raus+Fehler
Da könnte man doch den Fehler weglassen oder ?
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Campionissimo hat geschrieben:Also, wenn ich z.B. element[1] Funktioniert es noch. Aber wenn ich erhöhe dann nicht mehr, aber beim print Befehl wird alles ausgegeben.
Es ist eher unwahrscheinlich, dass es sich um einen Fehler in Python handelt.

Bitte poste hier einmal den entscheidenden Code der die komplette Liste und das einzelne Element ausgibt. Die ausgegebenen Ergebnisse solltest du hier ebenfalls angeben.
Campionissimo
User
Beiträge: 102
Registriert: Montag 28. März 2011, 07:50

Ich glaub es funktioniert.
Hab jetzt einfach die Elemente überprüft und wenn Sie nicht passten die leere Zeile gelöscht
Antworten