python操作csv檔案

2022-06-24 13:30:13 字數 2793 閱讀 3707

csv(comma-separated values)即逗號分隔值,可以用excel開啟檢視。由於是純文字,任何編輯器也都可開啟。與excel檔案不同,csv檔案中:

值沒有型別,所有值都是字串,不能指定字型顏色等樣式,不能指定單元格的寬高,不能合併單元格沒有多個工作表,不能嵌入影象圖表

在csv檔案中,以,作為分隔符,分隔兩個單元格。像這樣a,,c表示單元格a和單元格c之間有個空白的單元格。依此類推。

不是每個逗號都表示單元格之間的分界。所以即使csv是純文字檔案,也堅持使用專門的模組進行處理。python內建了csv模組。先看看乙個簡單的例子。

」將data內容寫入csv檔案,如下圖所示:

1

import

csv2 data =[3#

使用數字和字串的數字都可以

4 ("

ken","

mafe

",23),

5 ("

tame

","maee

",29),

6 ("

js","

dggd

",26)]

7 with open("

d:",'w

',newline=''

)as t_file:

8 csv_writer =csv.writer(t_file)

9for l in

data:

10 csv_writer.writerow(l)

第二步執行py檔案之後,我們可以看到d盤已經建立了test.csv檔案,如下圖所示:

第三步開啟test.csv檔案,可以看到已經將內容寫入到csv檔案中了:

上面就簡單介紹了csv的寫,下面來看一下csv讀的方法:

第一步,輸入

1

import

csv2 reader =csv.reader(open('

d:'))#開啟3

for list in

reader:

4print(list)

第二步執行py檔案,可以看到讀取了csv檔案內容,這裡需要注意的是如果直接將excel**字尾名改為csv檔案,讀取的時候,會出現編碼錯誤

在上面,list是乙個列表,如果想要檢視固定的某列,則需要加上下標,例如我想要檢視age,那麼只需要改為list[1]

補充:

在寫入字典序列型別資料的時候,需要傳入兩個引數,乙個是檔案物件——f,乙個是欄位名稱——fieldnames,到時候要寫入表頭的時候,只需要呼叫writerheader方法,寫入一行字典系列資料呼叫writerrow方法,並傳入相應字典引數,寫入多行呼叫writerows

1

import

csv2 header=['

name

','age']

3 data =[

4 ,5 ,

6 ]7 with open("

d:\\test.csv

",'w

',newline=''

)as t_file:8#

表頭在這裡傳入,作為第一行資料

9 writer =csv.dictwriter(t_file,header)

10writer.writeheader()

11for l in

data:

12 writer.writerow(l)

再開啟test.csv結果如下:

假設csv檔案的內容如上圖圖所示,用dictreader來讀取它

dictreader會將第一行的內容(類標題)作為key值,第二行開始才是資料內容。即圖中的csv檔案有2列4行資料,第一列的key值為name,第二列的key值為age:

1

import

csv2 with open('

d:',encoding='

utf-8

')as f:

3 reader =csv.dictreader(f)#

字典表 dictreader 列表讀取

4 headers =next(reader)#

迭代一次

5print

(headers)

6for row in

reader:

7print(row)

執行結果如下:

read方法的使用:列印出來的結果是陣列型別,有檔案中幾行資料就列印幾個陣列,不區分表頭和值

dictreader方法的使用:列印出來的資料是字典型別,**的表頭為鍵、每一行的值為值,值有幾行就列印幾個字典

python操作 csv檔案

需求 將a.csv中,相同手機號,只要有乙個傳送成功,則其餘改為傳送成功 遍歷軟體執行的資料夾 path dir os.getcwd for root,dirs,files in os.walk path dir for file in files if file.endswith csv f op...

python操作csv檔案

看上去不像是最優的樣子,可以改善 import csv csvfile open sentence lenth data.csv r encoding utf8 使用utf8格式讀取,windows預設讀取方式gbk reader csv.reader csvfile 讀取的是整張表 行 列 for...

Python操作csv檔案

一 python讀取csv檔案 說明 以python3.x為例2 讀取csv檔案方法1 3import csv4 csvfile open csvwrite.csv newline 開啟乙個檔案 5 csvreader csv.reader csvfile 返回的可迭代型別 6print type ...