国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

Python程序中用csv模塊來操作csv文件的基本使用教程

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 14:35:35
文檔

Python程序中用csv模塊來操作csv文件的基本使用教程

Python程序中用csv模塊來操作csv文件的基本使用教程:CSV全稱為Comma Separated Values,是一種格式化的文件,由行和列組成,分隔符可以根據(jù)需要來變化。 如下面為一csv文件: Title,Release Date,Director And Now For Something Completely Different,1971,Ian Ma
推薦度:
導(dǎo)讀Python程序中用csv模塊來操作csv文件的基本使用教程:CSV全稱為Comma Separated Values,是一種格式化的文件,由行和列組成,分隔符可以根據(jù)需要來變化。 如下面為一csv文件: Title,Release Date,Director And Now For Something Completely Different,1971,Ian Ma

CSV全稱為“Comma Separated Values”,是一種格式化的文件,由行和列組成,分隔符可以根據(jù)需要來變化。
如下面為一csv文件:

Title,Release Date,Director
And Now For Something Completely Different,1971,Ian MacNaughton
Monty Python And The Holy Grail,1975,Terry Gilliam and Terry Jones
Monty Python's Life Of Brian,1979,Terry Jones
Monty Python Live At The Hollywood Bowl,1982,Terry Hughes
Monty Python's The Meaning Of Life,1983,Terry Jones

csv可以比較方便的在不同應(yīng)用之間遷移數(shù)據(jù)。可以將數(shù)據(jù)批量導(dǎo)出為csv格式,然后倒入到其他應(yīng)用程序中。很多應(yīng)用中需要導(dǎo)出報表,也通常用csv格式導(dǎo)出,然后用Excel工具進行后續(xù)編輯。

打印發(fā)行日期及標(biāo)題,逐行處理:

for line in open("samples/sample.csv"):
 title, year, director = line.split(",")
 print year, title

使用csv模塊處理:

import csv
reader = csv.reader(open("samples/sample.csv"))
for title, year, director in reader:
 print year, title

改變分隔符

創(chuàng)建一csv.excel的子類,并修改分隔符為”;”

# File: csv-example-2.py
import csv
class SKV(csv.excel):
 # like excel, but uses semicolons
 delimiter = ";"
 
csv.register_dialect("SKV", SKV)
reader = csv.reader(open("samples/sample.skv"), "SKV")
for title, year, director in reader:
 print year, title

如果僅僅僅是改變一兩個參數(shù),則可以直接在reader參數(shù)中設(shè)置,如下:

# File: csv-example-3.py
 
import csv
 
reader = csv.reader(open("samples/sample.skv"), delimiter=";")
 
for title, year, director in reader:
 print year, title

將數(shù)據(jù)存為CSV格式

通過csv.writer來生成一csv文件。

# File: csv-example-4.py
 
import csv
import sys
 
data = [
 ("And Now For Something Completely Different", 1971, "Ian MacNaughton"),
 ("Monty Python And The Holy Grail", 1975, "Terry Gilliam, Terry Jones"),
 ("Monty Python's Life Of Brian", 1979, "Terry Jones"),
 ("Monty Python Live At The Hollywood Bowl", 1982, "Terry Hughes"),
 ("Monty Python's The Meaning Of Life", 1983, "Terry Jones")
]
 
writer = csv.writer(sys.stdout)
 
for item in data:
 writer.writerow(item)

實例

下面我們來看一個比較完整的例子,代碼說明在注釋中:

import csv


# dialect是訪問csv文件時需要指定的參數(shù)之一,用來確定csv文件的數(shù)據(jù)格式
# 下面這個函數(shù)列舉系統(tǒng)支持的dialect有哪些,默認(rèn)值是'excel',用戶也可
# 以從Dialect派生一個類,使用該類的實例作為dialect參數(shù)。
print csv.list_dialects()


def test_writer():
 # csv文件必須以二進制方式open
 with open('eggs.csv', 'wb') as csvfile:
 spamwriter = csv.writer(csvfile)
 spamwriter.writerow(['Spam'] * 5 + ['Baked Beans'])
 spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])


def test_reader():
 with open('eggs.csv', 'rb') as csvfile:
 spamreader = csv.reader(csvfile)
 for row in spamreader:
 print row


# sniffer 用來推斷csv文件的格式,不是很準(zhǔn)確
def test_sniffer():
 with open('eggs.csv', 'wb') as csvfile:
 spamwriter = csv.writer(csvfile, delimiter=' ')

 spamwriter.writerow(['Spam'] * 2 + ['Baked Beans'])
 spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])

 # 通常你需要指定與寫入者相同的文件格式才能正確的讀取數(shù)據(jù)
 with open('eggs.csv', 'rb') as csvfile:
 spamreader = csv.reader(csvfile, delimiter=' ')
 for row in spamreader:
 print ', '.join(row)

 # 如果不知道文件格式,sniffer就可以派上用場了
 with open('eggs.csv', 'rb') as csvfile:
 # 用sniffer推斷文件格式,從而得到dialect
 dialect = csv.Sniffer().sniff(csvfile.read(1024))
 print dialect.delimiter, dialect.quotechar

 # 文件重新移動到頭部
 csvfile.seek(0)

 # 用推斷出來的dialect創(chuàng)建reader
 reader = csv.reader(csvfile, dialect)

 for row in reader:
 print ', '.join(row)

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Python程序中用csv模塊來操作csv文件的基本使用教程

Python程序中用csv模塊來操作csv文件的基本使用教程:CSV全稱為Comma Separated Values,是一種格式化的文件,由行和列組成,分隔符可以根據(jù)需要來變化。 如下面為一csv文件: Title,Release Date,Director And Now For Something Completely Different,1971,Ian Ma
推薦度:
標(biāo)簽: csv csv文件 csv格式
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 精品91精品91精品国产片 | 在线亚洲精品国产成人二区 | 久久国产精品免费一区二区三区 | 国产成人精品一区二区 | 亚洲v日韩v欧美在线观看 | 日韩一区二区三区不卡 | 国产自在线拍 | 欧美国产精品va在线观看 | 亚洲a∨精品一区二区三区下载 | 美日韩中文字幕 | 国内精品久久久久久久久 | 国内精品视频在线观看 | 91精品久久久久久久久久 | 欧美日韩免费一区二区三区 | 国产日韩一区二区三区 | 欧美精品久久久久久久久大尺度 | 欧美网址在线观看 | 欧美日韩精品一区二区三区四区 | 国产精品一区二区久久不卡 | 亚洲欧美综合网 | 草逼电影| 在线日韩视频 | 日韩网站在线观看 | 91精品91久久久久久 | 黄色毛片免费看 | 欧洲亚洲欧美国产日本高清 | 精品欧美一区二区三区在线观看 | 欧美在线免费播放 | 欧美首页 | 国产福利一区二区三区 | 亚洲精品国产综合久久一线 | 亚洲欧美日韩在线观看 | 午夜精品一区二区三区在线视 | 日韩亚洲国产综合久久久 | 91午夜精品亚洲一区二区三区 | 国产日韩欧美精品在线 | 欧美区在线观看 | 国产欧美精品区一区二区三区 | 亚洲三级电影在线 | 国产精品va在线观看无 | 九九精品视频一区在线 |