Python CSV文件處理/讀寫編碼
CSV全稱爲「Comma Separated Values」,是一種格式化的文件,由行和列組成,分隔符能夠根據須要來變化。 以下面爲一csv文件:spa
Title,Release Date,Directorexcel
And Now For Something Completely Different,1971,Ian MacNaughtoncode
Monty Python And The Holy Grail,1975,Terry Gilliam and Terry Jonesutf-8
Monty Python's Life Of Brian,1979,Terry Jonesunicode
Monty Python Live At The Hollywood Bowl,1982,Terry Hughesit
Monty Python's The Meaning Of Life,1983,Terry Jonesclass
1、打印發行日期及標題。看成文件讀出來逐行處理:import
for line in open("samples/sample.csv"):csv
title, year, director = line.split(",")
print(year, title)
2、使用csv模塊處理(打印發行日期及標題):
import csv
reader = csv.reader(open("samples/sample.csv"))
for title, year, director in reader:
print(year, title)
2.一、改變分隔符,建立一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)
2.2若是僅僅僅是改變一兩個參數,則能夠直接在reader參數中設置,以下:
# File: csv-example-3.py
import csv
reader = csv.reader(open("samples/sample.skv"), delimiter=";")
for title, year, director in reader:
print(year, title)
3、將數據存爲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"),
("中國 Python's The Meaning Of Life", 1983, "Terry Jones")]
writer = csv.writer(sys.stdout)
for item in data:
writer.writerow(item)
//中文編碼問題
//writer.writerow([unicode(s).encode("utf-8") for s in item])