2017-03-07 1 views
0

ich eine Textdatei haben, die wie folgt aussieht:Split eine Datei in einzelne Abschnitte und legen Sie sie auf eine Variable

1,02/09/15,18:00,RNGesus,Ingsoc,Y,Ingsoc 
2,03/09/15,18:00,M’lady,Napoleon Wilson,Y,Napoleon Wilson 
3,04/09/15,18:00,Ripley,Billy Casper,Y,Billy Casper 
4,05/09/15,18:00,Jenkins,Tyler,Y,Jenkins 

Und ich brauche sie zu spalten, und sie dann in eine Variable gedruckt werden. Dies ist der Code, den ich

f = open("fireside.txt", "r") 
line = f.readlines() 
game=input("Type in your estimate number") 
for line in open("fireside.txt"): 
    line=line.strip() 
    gamenumber, date, time, player1,player2, played, winner= line.split(",") 
if gamenumber== game: 
    print(gamenumber) 
    print(date) 
    print(player1) 
    print(player2) 
    print(played) 
    print(winner) 

bisher habe und dann mit dieser Fehlermeldung greated IMS:

Wenn es in dem Code einen Fehler ist es bitte zu bearbeiten, oder wenn es einen einfacheren Weg, um zu versuchen, diese Aufgabe

+0

Sie können überprüfen, ob Sie eine leere Zeile am Ende der Datei haben. – niemmi

+0

Sie möchten den Code möglicherweise einrücken, sodass if-Anweisung innerhalb von for loop ist. – pratibha

+0

Ich habe all das getan, aber ich habe immer noch mit der gleichen Fehlermeldung enden, gibt es noch etwas, das ich versuchen könnte –

Antwort

0

Sie die Datei öffnen und die Daten zweimal mit

f = open("fireside.txt", "r") 
line = f.readlines() 

Lesen und

for line in open("fireside.txt"): 
    line=line.strip() 

Beide Möglichkeiten sind in Ordnung, aber Sie sollten nur einen tun. Und vergessen Sie nicht, Ihre Datei zu schließen. Der beste Weg ist, einen Dateikontext zu verwenden, der ihn am Ende für Sie schließt:

with open("fireside.txt") as file: 
    for line in file: 
     do stuff 
+0

Vielen Dank für Ihren Rat, aber ich habe immer noch die gleiche Fehlermeldung, gibt es trotzdem, um dies zu beheben –

Verwandte Themen