1. 程式人生 > >csv模組學習:Python學習筆記—CSV模組讀寫資料

csv模組學習:Python學習筆記—CSV模組讀寫資料

CSV模組Python的內建模組,直接import csv就可呼叫。csv模組主要就兩個函式:csv.reader()——讀取csv檔案資料,csv.writer()——寫入csv檔案資料。簡單實用。

一、讀取CSV

語法:csv.reader(iterable[, dialect='excel'][optional keyword args])

示例:

import csv reader=csv.reader(open('test.csv''rb')) for item in reader: print line

二、寫入CSV

語法:csv.writer(fileobj [, dialect='excel'][optional keyword args])

示例:

import csv writer=csv.writer(open('test.csv''wb')) writer.writerow(['col1''col2''col3']) data=[range(3for in range(3)] for item in data: writer.writerow(item)

須注意之處:writer.writerow()方法中的引數是list型別,如果你想在A1列寫入'hello',則必須是writer.writerow(['hello']),不然'hello'會被看成是個list從而被分寫入5列。

寫入CSV時,CSV檔案的建立必須加上'b'引數,即csv.writer(open('test.csv','wb')),不然會出現隔行的現象。網上搜到的解釋是:python

正常寫入檔案的時候,每行的結束預設新增‘\n’,即0x0D,而writerow命令的結束會再增加一個0x0D0A,因此對於windows系統來說,就是兩行,而採用’b'引數,用二進位制進行檔案寫入,系統預設是不新增0x0D的。