逗號分隔值(comma-separated values,csv,有時也稱為字元分隔值,因為分隔字元也可以不是逗號),其檔案以純文字形式儲存**資料(數字和文字)
1、首先匯入csv模板
2、建立乙個csv檔案物件
3、開啟檔案進行讀取
**結果:
['測試1', '軟體測試工程師']
['測試2', '軟體測試工程師']
['測試3', '軟體測試工程師']
['測試4', '軟體測試工程師']
['測試5', '軟體測試工程師']
1、首先匯入csv模組
2、建立乙個csv檔案物件
3、進行寫入csv檔案
# coding:utf-8import csv
data = [
("測試1",'軟體測試工程師'),
("測試2",'軟體測試工程師'),
("測試3",'軟體測試工程師'),
("測試4",'軟體測試工程師'),
("測試5",'軟體測試工程師'),
]f = open('222.csv','w')
writer = csv.writer(f)for i in data:
writer.writerow(i)
f.close()
寫入後開啟檔案發現亂碼了
解決方法:
1、匯入codecs模組
2、使用cpdecs開啟檔案
# coding:utf-8import csvimport codecs
data = [
("測試1",'軟體測試工程師'),
("測試2",'軟體測試工程師'),
("測試3",'軟體測試工程師'),
("測試4",'軟體測試工程師'),
("測試5",'軟體測試工程師'),
]f = codecs.open('222.csv','w','gbk')
writer = csv.writer(f)for i in data:
writer.writerow(i)
f.close()
這個時候發現不會亂碼了
csv.dictreader()用法:
# 將csv資料讀進列表中# coding:utf-8import csv
data = [
("測試1",'軟體測試工程師1'),
("測試3",'軟體測試工程師3'),
("測試4",'軟體測試工程師4'),
("測試5",'軟體測試工程師5'),
]f1 = open('222.csv','r')
reader = csv.dictreader(f1)for i in reader:print(i)
f1.close()
**結果:
[('測試1', '測試3'), ('軟體測試工程師1', '軟體測試工程師3')]
[('測試1', '測試4'), ('軟體測試工程師1', '軟體測試工程師4')]
[('測試1', '測試5'), ('軟體測試工程師1', '軟體測試工程師5')]
csv.dictwriter()用法
# 直接字典字段寫入到csv檔案中
# coding:utf-8import csv
data =
with open('123.csv','w')as f:
fieldnames = # 表頭
writer = csv.dictwriter(f,fieldnames=fieldnames)
writer.writeheader()
writer.writerow(data)
結果:
發現上面寫入後中間多了一行,如何解決這一行呢?
加入引數「enwline=『』」
# coding:utf-8
import csv
data = # 加入引數「enwline=''」
with open('123.csv','w',newline='')as f:
fieldnames =
writer = csv.dictwriter(f,fieldnames=fieldnames)
writer.writeheader()
writer.writerow(data)
'r':讀
'w':寫
'a':追加
'r+' == r+w(可讀可寫,檔案若不存在就報錯(ioerror))
'w+' == w+r(可讀可寫,檔案若不存在就建立)
'a+' ==a+r(可追加可寫,檔案若不存在就建立)
對應的,如果是二進位制檔案,就都加乙個b就好啦:
'rb' 'wb' 'ab' 'rb+' 'wb+' 'ab+'
Python讀寫csv檔案
1.寫入並生成csv檔案 coding utf 8 import csv csvfile file csv test.csv wb writer csv.writer csvfile writer.writerow 姓名 年齡 data 小河 25 1234567 小芳 18 789456 writ...
python 讀寫csv檔案
1.忽略第一行標題的基礎上 python2.7 coding utf 8 import csv csv reader csv.reader open r c users thinkpad desktop tweets.csv for row in csv reader 條件語句忽略第一行檔案資料 i...
python 讀寫csv檔案
1.將dataframe資料寫入csv 1 用 csv包一行一行的寫入 import csv python2可以用file替代open with open test.csv w as csvfile writer csv.writer csvfile 先寫入columns name writer.w...