Dieser Artikel vermittelt Ihnen relevantes Wissen über Python, das hauptsächlich Probleme im Zusammenhang mit dem Schreiben und Lesen von CSV-Dateien behandelt. CSV ist ein häufig verwendetes Textformat zum Speichern von Tabellendaten, einschließlich Zahlen oder Zeichen. Ich hoffe, es hilft allen.
Empfohlenes Lernen: Python-Tutorial
CSV (Comma Separated Values), auch als zeichengetrennte Werte bekannt (auch zeichengetrennte Werte genannt, da das Trennzeichen möglicherweise kein Komma ist), ist ein häufig verwendetes Textformat zum Speichern tabellarischer Daten, einschließlich Zahlen oder Zeichen. Viele Programme stoßen bei der Datenverarbeitung auf Dateien im CSV-Format. Python verfügt über ein CSV-Modul, das speziell zum Lesen von CSV-Dateien verwendet wird.
Beim Erstellen eines Writer-Objekts werden zwei Hauptmethoden verwendet. Einer davon ist writeow, der eine Zeile schreibt. Die andere Möglichkeit besteht darin, mehrere Zeilen mit Writer zu schreiben.
Verwenden Sie DictWriter, um mithilfe eines Wörterbuchs Daten hineinzuschreiben.
Schritte
: 1. Daten und Header erstellen 2. Writer-Objekt erstellen 3. Header schreiben 4. Liste durchgehen und jede Datenzeile in CSV schreiben Der Code lautet wie folgt:
import csv person = [('xxx', 18, 193), ('yyy', 18, 182), ('zzz', 19, 185)]# 表头header = ['name', 'age', 'height']with open('person.csv', 'w', encoding='utf-8') as file_obj: # 1:创建writer对象 writer = csv.writer(file_obj) # 2:写表头 writer.writerow(header) # 3:遍历列表,将每一行的数据写入csv for p in person: writer.writerow(p)
Nach dem Öffnen werden Sie feststellen, dass die geschriebenen Daten eine Zeile haben bricht.
Überraschenderweise
: Wie sollen wir dieses Problem lösen Hacker
: Es ist ganz einfach Fügen Sie beim Schreiben von Daten einfach einen Parameter hinzu newline=''
Um das Schreiben von Zeilenumbrüchen zu verhindern Der korrigierte Code lautet wie folgt:
import csv# 数据person = [('xxx', 18, 193), ('yyy', 18, 182), ('zzz', 19, 185)]# 表头header = ['name', 'age', 'height']with open('person.csv', 'w', encoding='utf-8', newline='') as file_obj: # 创建对象 writer = csv.writer(file_obj) # 写表头 writer.writerow(header) # 遍历,将每一行的数据写入csv for p in person: writer.writerow(p)
✅Durch Erstellen eines Writer-Objekts (mehrere Zeilen gleichzeitig schreiben)
Schritte
: 1. Erstellen Sie Daten und Tabellenüberschriften. 2. Erstellen Sie ein Writer-Objekt. 3. Schreiben Sie Tabellenüberschriften. 4. Übergeben Sie das, was Sie möchten, in Writerows verarbeitete Daten import csv# 数据person = [('xxx', 18, 193), ('yyy', 18, 182), ('zzz', 19, 185)]# 表头header = ['name', 'age', 'height']with open('person.csv', 'w', encoding='utf-8', newline='') as file_obj:
# 创建对象
writer = csv.writer(file_obj)
# 写表头
writer.writerow(header)
# 3.写入数据(一次性写入多行)
writer.writerows(person)
Die zweite Schreibmethode (mit DictWriter kann das Wörterbuch zum Schreiben der Daten verwendet werden)
Hinweise: Seien Sie vorsichtig, wenn Sie das Wörterbuch zum Schreiben der übergebenen Daten verwenden Format muss ein Wörterbuch sein Wenn es sich nicht um ein Wörterbuch handelt, wird ein Fehler gemeldet
Schritte
1 im Wörterbuchformat sein )2. DictWriter-Objekt erstellen 3. Header schreiben 4. Daten schreiben
Lesen von CSV
import csv# 数据person = [ {'name': 'xxx', 'age': 18, 'height': 193}, {'name': 'yyy', 'age': 18, 'height': 182}, {'name': 'zzz', 'age': 19, 'height': 185},]# 表头header = ['name', 'age', 'height']with open('person.csv', 'w', encoding='utf-8', newline='') as file_obj: # 1.创建DicetWriter对象 dictWriter = csv.DictWriter(file_obj, header) # 2.写表头 dictWriter.writeheader() # 3.写入数据(一次性写入多行) dictWriter.writerows(person)
import csvwith open('person.csv', 'r', encoding='utf-8') as file_obj: # 1.创建reader对象 reader = csv.reader(file_obj) print(reader)
import csvwith open('person.csv', 'r', encoding='utf-8') as file_obj: # 1.创建reader对象 reader = csv.reader(file_obj) # 2.遍历进行读取数据 for r in reader: print(r)
Python-Tutorial
Das obige ist der detaillierte Inhalt vonZusammenfassung der Python-Kenntnisse: Schreiben und Lesen von CSV-Dateien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!