# _*_ coding: utf-8 _*_
"""csv file operate
"""import csv
import datetime
# 資料
data = [
[1, "a,bc", 19.353, datetime.datetime(2001, 3, 17)],
[2, "ei,f", 13.287, datetime.datetime(2011, 4, 27)],
[3, 'q"ij', 15.852, datetime.datetime(2003, 7, 14)],
[4, "zh'n", 11.937, datetime.datetime(2012, 1, 9)],
[5, "i'op", 12.057, datetime.datetime(2009, 5, 18)],
]# 自己建立dialect
csv.register_dialect(
"mydialect",
delimiter=',', # 字段分隔符
escapechar='\\', # 轉義字元
quotechar='"', # 包裹字元
doublequote=false, # 使轉義字元生效
lineterminator='\n', # 行與行之間的分隔符
quoting=csv.quote_all # 包裹模式
)# 寫檔案
with open("test.csv", "w") as file:
writer = csv.writer(file, dialect="mydialect")
# writer.writerows(data)
for item in data:
writer.writerow(item)
exit()
# 讀檔案
with open("test.csv", "r") as file:
reader = csv.reader(file, dialect="excel")
for item in reader:
print(item)
# 讀檔案
with open("test.csv", "r") as file:
reader = csv.dictreader(file, fieldnames=["id", "name", "float", "datetime"], dialect="excel")
data = [item for item in reader]
print(data)
# 寫檔案
with open("test.csv", "w") as file:
writer = csv.dictwriter(file, fieldnames=["id", "name", "float", "datetime"], dialect="excel")
writer.writeheader()
for item in data:
writer.writerow(item)
檔案操作方法
1 讀系列 2 寫系列 需要注意的是 1 一次性讀完以後,游標停留在了檔案末尾,無法再次讀取內容 2 該方法在讀取大檔案的時候,可能會造成記憶體溢位的情況。解決上述問題的策略就是逐行讀取檔案內容。以後涉及到多行檔案內容的情況一般都採用for迴圈讀取。1 t 文字模式 文字模式是檔案操作的預設模式 r...
檔案操作方法
目錄 f.read讀取所有檔案的時候,如果是小檔案還好,如果是資料特別大得到檔案,就問造成記憶體溢位從而導致電腦宕機 t 文字模式 1.預設的模式 r w a rt wt at 2.該模式所有操作都是以字串基本單位 文字 3.該模式必須要指定encoding引數 4.該模式只能操作文字檔案 b 二進...
python的檔案操作方法
python的檔案操作方法 file.readline 讀取下一行檔案,返回含有內容的字串 file.readlines 讀取整個檔案,返回乙個字串列表 file.read 讀取整個檔案,返回乙個字串 f open filename mode 開啟乙個檔案,mode 有 r rb r w wb a ...