Heim >Backend-Entwicklung >Python-Tutorial >Einführung in die Methode, Python zum Lesen und Schreiben von Dateien mit chinesischen Zeichen zu verwenden und am Ende bestimmte Zeichen hinzuzufügen

Einführung in die Methode, Python zum Lesen und Schreiben von Dateien mit chinesischen Zeichen zu verwenden und am Ende bestimmte Zeichen hinzuzufügen

高洛峰
高洛峰Original
2017-03-20 13:07:401643Durchsuche

Beim Data Mining ist das Format der Originaldateien oft frustrierend. Ein sehr wichtiger Schritt besteht darin, das Format der Datendateien zu organisieren.

Kürzlich war das Format der bereitgestellten Datendatei mit Pandas einfach unerträglich und es wurden immer io-Fehler angezeigt Die Anzahl der Daten in der Datei endet mit „. Da jedoch andere Zeilen fehlen, liegt die Notwendigkeit auf der Hand: Überprüfen Sie, ob am Ende jeder Zeile ein „“ steht. Wenn nicht, fügen Sie es einfach hinzu.

Es ist besser, Flashback zu verwenden. Schließlich brauchen viele Menschen nur eine schnelle Lösung, nicht ein Warum. Die Lösung ist wie folgt:

b = open('b_file.txt', w)
with open('a_file.txt', 'r') as lines:
    for line in lines:
        line = line.strip()
        if not line.endswith(r'"'):
            line += r'"'
        line += '\n'
        b.write(line)

b.close()
a.close()

Der Schlüssel zum gesamten Prozess ist

line = line.strip()

Ich war vorher faul und habe es direkt verwendet und die obige Zeile weggelassen. Infolgedessen bin ich auf die Beurteilungsbedingung gestoßen. Das Programm dachte, dass jede Zeile nicht mit „:

endete
if not line.endswith(r'"')

Warten Sie es mit Ihrer Kopfhaut und schreiben Sie neu:

for line in open(data_path+'heheda.txt', 'r'):
    if not line[-2] == r'"':
        print line
        line = line[:-1] + r'"' + line[-1:]
        print line

Zu diesem Zeitpunkt lautet die Beurteilungsbedingung, wenn nicht Zeile[-2] == r'"', also das Sie können bis auf die letzte Zeile das richtige Ergebnis erhalten. Wie wir alle wissen, lautet das Wagenrücklaufzeichen der Datei im Windows-System „rn“. Wenn also kein Strip () zur Verarbeitung des Wagenrücklaufzeichens vorhanden ist, müssen Sie am Ende manuell ein Byte nach vorne verschieben jede Zeile, um das Ende jeder Zeile zu beurteilen. Die letzte Zeile der Datei endet normalerweise nicht mit einem Wagenrücklaufzeichen. Schließlich ist kein Zeilenumbruch erforderlich. Daher wird Zeile[-2] in der Mitte des letzten chinesischen Zeichens positioniert und xxxx wird hart als xx"xx geschrieben, was dazu führt, dass das letzte Zeichen falsch angezeigt wird.

Das obige ist der detaillierte Inhalt vonEinführung in die Methode, Python zum Lesen und Schreiben von Dateien mit chinesischen Zeichen zu verwenden und am Ende bestimmte Zeichen hinzuzufügen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn