Rumah > pembangunan bahagian belakang > Tutorial Python > Ringkasan pengetahuan Python: menulis dan membaca fail csv

Ringkasan pengetahuan Python: menulis dan membaca fail csv

WBOY
Lepaskan: 2022-04-02 12:53:10
ke hadapan
3012 orang telah melayarinya

Artikel ini membawa anda pengetahuan yang berkaitan tentang python, yang terutamanya memperkenalkan isu yang berkaitan dengan menulis dan membaca fail csv ialah format teks yang biasa digunakan, digunakan untuk Menyimpan data jadual, termasuk nombor atau aksara, I semoga ianya bermanfaat kepada semua.

Ringkasan pengetahuan Python: menulis dan membaca fail csv

Pembelajaran yang disyorkan: tutorial python

CSV (Nilai Dipisahkan Koma), iaitu, nilai dipisahkan koma (juga dikenali sebagai nilai dipisahkan aksara, Kerana pembatas boleh menjadi selain daripada koma), ia ialah format teks yang biasa digunakan untuk menyimpan data jadual, termasuk nombor atau aksara. Banyak program akan menemui fail dalam format csv semasa memproses data. Python datang dengan modul csv, yang digunakan khas untuk mengendalikan pembacaan fail csv

penulisan csv

Dengan mencipta objek penulis, dua kaedah digunakan terutamanya. Satu ialah writerow, yang menulis baris. Yang lain ialah writerows untuk menulis berbilang baris

Gunakan DictWriter untuk menulis data ke dalamnya menggunakan kamus

Kaedah penulisan pertama (dengan mencipta objek penulis)

Mari kita bincangkan kaedah penulisan pertama: menulis dengan mencipta objek penulis (menulis satu baris pada satu masa)
Langkah-langkah : 1. Buat data dan pengepala 2. Buat objek penulis 3. Tulis tajuk 4. Traverse senarai dan tulis setiap baris data ke dalam csv
Kodnya adalah seperti berikut:

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)
Salin selepas log masuk

Selepas menulis, fail person.csv akan muncul dalam direktori semasa Klik kanan tunjukkan Open person.csv in Explorer untuk melihat

Ringkasan pengetahuan Python: menulis dan membaca fail csv
Ringkasan pengetahuan Python: menulis dan membaca fail csv
Ringkasan pengetahuan Python: menulis dan membaca fail csv
Selepas membukanya, anda akan mendapati bahawa data bertulis akan mempunyai pemisah baris di tengah
tanpa diduga: Jadi bagaimana kita harus menyelesaikan masalah ini
penggodam: Ia sangat mudah
Hanya tambahkan parameter semasa menulis data newline=''Dalam. perintah Elakkan pemisah baris daripada ditulis
Kod yang diperbetulkan adalah seperti berikut:

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)
Salin selepas log masuk

Ringkasan pengetahuan Python: menulis dan membaca fail csv
✅Dengan mencipta objek penulis (menulis berbilang baris sekaligus)
Langkah : 1. Cipta data dan pengepala 2. Cipta objek penulis 3. Tulis pengepala 4. Masukkan data yang ingin anda proses dalam baris tulis

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)
Salin selepas log masuk

Hasil penulisan adalah seperti berikut:

Ringkasan pengetahuan Python: menulis dan membaca fail csv

Kaedah penulisan kedua (gunakan DictWriter untuk menulis data menggunakan kamus)

Nota: Gunakan kamus untuk menulis Sila ambil perhatian bahawa format data yang diluluskan mestilah kamus
Jika ia bukan kamus, ralat akan dilaporkan

AttributeError: objek 'tuple' tidak mempunyai 'kunci' atribut

Langkah 1. Cipta data dan pengepala ( Data mesti dalam format kamus ) 2. Cipta objek DictWriter 3. Tulis pengepala 4. Tulis data

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)
Salin selepas log masuk

Ringkasan pengetahuan Python: menulis dan membaca fail csv

bacaan csv

membaca melalui pembaca()

import csvwith open('person.csv', 'r', encoding='utf-8') as file_obj:
    # 1.创建reader对象
    reader = csv.reader(file_obj)
    print(reader)
Salin selepas log masuk

akan dikembalikan jika dicetak terus objek csv.reader, maka anda perlu melintasi senarai

<_csv.reader object di>

Betulkan kod seperti berikut:

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)
Salin selepas log masuk

Keputusan bacaan adalah seperti berikut:

['name', 'age', 'height']['xxx', '18', '193']['yyy', '18', '182']['zzz', '19', '185']
Salin selepas log masuk

Jika anda ingin mencetak nilai tertentu dalam senarai, anda boleh menggunakan cetakan indeks

print(r[0])
Salin selepas log masuk
name
xxx
yyy
zzz
Salin selepas log masuk

Baca melalui dictreader()

import csvwith open('person.csv', 'r', encoding='utf-8') as file_obj:
    # 1.创建reader对象
    dictReader = csv.DictReader(file_obj)
    # 2.遍历进行读取数据
    for r in dictReader:
        print(r)
Salin selepas log masuk

Hasil yang dikembalikan adalah seperti berikut:

OrderedDict([('name', 'xxx'), ('age', '18'), ('height', '193')])OrderedDict([('name', 'yyy'), ('age', '18'), ('height', '182')])OrderedDict([('name', 'zzz'), ('age', '19'), ('height', '185')])
Salin selepas log masuk

Pada masa ini, jika kita ingin mendapatkan nilai tertentu, kita perlu menentukan kunci untuk mencari nilai

print(r['name'])
Salin selepas log masuk
xxx
yyy
zzz
Salin selepas log masuk

Di atas adalah penulisan dan pembacaan fail csv dalam tutorial python asas Jika anda mempunyai sebarang cadangan untuk penambahbaikan, sila tinggalkan mesej kawasan komen~

Pembelajaran yang disyorkan: tutorial python

Atas ialah kandungan terperinci Ringkasan pengetahuan Python: menulis dan membaca fail csv. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:csdn.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan