Lesen Sie eine tab-getrennte txt-Datei und schreiben in separaten csv-Spalte

Ich habe eine txt-Datei, die mehrere Zeilen für die überschriften, die vertreten werden durch ein ‚#‘.

Dann habe ich drei Spalten, jede mit Ihren eigenen header, den ich kopieren möchten, in eine csv-Datei, die es ermöglichen, für jede Spalte eine eigene Spalte in der Tabelle.

Derzeit bin ich in der Lage zu bekommen, ist eine Datei, die alle drei Säulen in einem Abschnitt der csv.

import csv

infile = r'path\seawater_nh.txt'
outfile = r'path\emissivity_new.csv'

print "definitions successful"

in_txt = csv.reader(open(infile, 'rb'), delimiter = '\t')
out_csv = csv.writer(open(outfile, 'wb'))

out_csv.writerows(in_txt) 
  • Können Sie die Beispiel-Datei?
  • Ich bin ein wenig verwirrt von deiner Beschreibung des Problems, könnten Sie bitte post auch eine Probe von der beabsichtigten Ausgabe? Wenn Sie möchten, fügen Sie info zu deinem post auf „edit“ unter dem post-text.



One Reply
  1. 1

    In Abwesenheit des sample-input-und output-Dateien, ich vermute hier. Aber vielleicht ändern, wie Sie Ihre Dateien werden gelesen und geschrieben werden (Hinweis: je nach Betriebssystem müssen Sie möglicherweise ändern, wie die Zeilen zu Lesen).

    import csv
    
    infile = r'path\seawater_nh.txt'
    outfile = r'path\emissivity_new.csv'
    
    with open(infile, "r") as in_text:
        in_reader = csv.reader(infile , delimiter = '\t')
        with open(outfile, "w") as out_csv:
            out_writer = csv.writer(out_csv, newline='')
            for row in in_reader:
                out_writer.writerow(row)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.