一文搞懂怎麼在python中讀取和寫入CSV檔案

2022-07-15 18:00:43
本篇文章給大家帶來了關於Python的相關知識,其中主要整理了讀取和寫入CSV檔案的相關問題,CSV(Comma-Separated Values)即逗號分隔值,一種以逗號分隔按行儲存的文字檔案,所有的值都表現為字串型別,下面一起來看一下,希望對大家有幫助。

【相關推薦:Python3視訊教學

CSV(Comma-Separated Values)即逗號分隔值,一種以逗號分隔按行儲存的文字檔案,所有的值都表現為字串型別(注意:數位為字串型別)。

如果CSV中有中文,應以utf-8編碼讀寫.

1.匯入CSV庫

python中對csv檔案有自帶的庫可以使用,當我們要對csv檔案進行讀寫的時候直接匯入即可。
import csv

2.對CSV檔案進行讀寫

2.1 用列表形式寫入CSV檔案

語法:csv.writer(f):
writer支援writerow(列表)單行寫入,和writerows(巢狀列表)批次寫入多行,無須手動儲存。

import csv

header = ['name','age','QQ_num','wechat']data = [['suliang','21','787991021','lxzy787991021']]with open ('information.csv','w',encoding='utf-8',newline='') as fp:
    # 寫
    writer =csv.writer(fp)
    # 設定第一行標題頭
    writer.writerow(header)
    # 將資料寫入
    writer.writerows(data)

結果:
在這裡插入圖片描述
注意,開啟檔案時應指定格式為w, 文字寫入.
開啟檔案時,指定不自動新增新行newline=‘’,否則每寫入一行就或多一個空行。

2.2 用列表形式讀取CSV檔案

語法:csv.reader(f, delimiter=‘,’)
reader為生成器,每次讀取一行,每行資料為列表格式,可以通過delimiter引數指定分隔符

import csvwith open('information.csv',encoding='utf-8')as fp:
    reader = csv.reader(fp)
    # 獲取標題
    header = next(reader)
    print(header)
    # 遍歷資料
    for i in reader:
        print(i)

結果:
在這裡插入圖片描述
讀取檔案時檔案路徑務必要寫對,不確定時可寫絕對路徑。要獲取csv的內容則需要遍歷再輸出。

2.3 用字典形式寫入csv檔案

語法:csv.DicWriter(f):
寫入時可使用writeheader()寫入標題,然後使用writerow(字典格式資料行)或writerows(多行資料)

import csv

header = ['name','age']data = [{'name':'suliang','age':'21'},
        {'name':'xiaoming','age':'22'},
        {'name':'xiaohu','age':'25'}]with open ('information.csv','w',encoding='utf-8',newline='') as fp:
    # 寫
    writer =csv.DictWriter(fp,header)
    # 寫入標題
    writer.writeheader()
    # 將資料寫入
    writer.writerows(data)

結果:
在這裡插入圖片描述

2.4 用字典形式讀取csv檔案

語法:csv.DicReader(f, delimiter=‘,’)
直接將標題和每一列資料組裝成有序字典(OrderedDict)格式,無須再單獨讀取標題行

import csvwith open('information.csv',encoding='utf-8')as fp:
    reader = csv.DictReader(fp)
    for i in reader        print(i)

結果:
在這裡插入圖片描述

附:csv讀寫的模式

r:以讀方式開啟檔案,可讀取檔案資訊

w: 已寫方式開啟檔案,可向檔案寫入資訊。如檔案存在,則清空,再寫入

a:以追加模式開啟檔案,開啟檔案可指標移至末尾,檔案不存在則建立

r+:以讀寫方式開啟檔案,可對檔案進行讀和寫操作

w+:消除檔案內容,以讀寫方式開啟檔案

a+:以讀寫方式開啟檔案,檔案指標移至末尾

b:以二進位制開啟檔案

【相關推薦:Python3視訊教學

以上就是一文搞懂怎麼在python中讀取和寫入CSV檔案的詳細內容,更多請關注TW511.COM其它相關文章!