csv檔案的操作方法

2021-10-23 04:18:35 字數 1604 閱讀 2368

# _*_ 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 ...