Python培訓csv模塊
2021-11-22點擊量:397
Python中的csv模塊1.csv模塊說明:1.1默認讀寫用逗號做分隔符(delimiter),雙引號作引用符(quotechar)1.2用writer寫數據None被寫成空字符串,浮點型調用repr()轉化成字符串。非字符串型數據被str()成字符串存儲。1.3open函數importlocale;locale.getpreferredencoding()#查看本地編碼'cp936'open('some.csv',newline='',encoding='utf-8')#使用系統默認編碼將文件解碼為unicode可使用不同的編碼解碼文件#如果newline=''沒有指定,嵌入引用字段內換行符將不會被正確地解釋4)RFC4180提供了一些標準:#內容為純文本;包含記錄#每條記錄是用單個分隔字符將各屬性分隔#每條記錄的屬性序列是相同的pandas可以通過PyPI的pip安裝。2.模塊內容2.1模塊常量:引用約定quoting=csv.QUOTE_MINIMAL=0#writer對象只引用那些包含特殊字符quoting=csv.QUOTE_ALL=1#writer對象引用所有字段#如字段分隔符,quotechar或任何字符lineterminator。quoting=csv.QUOTE_NONNUMERIC=2#writer對象引用所有非數字字段。#指示讀者將所有非引用字段轉換為float類型。quoting=csv.QUOTE_NONE=3,escapechar='$'#writer對象不引用字段#如未設置escapechar錯誤拋出;指示reader不對引號字符執行特殊處理。2.21.函數:csv.reader(f,dialect='excel',**fmtparams)#返回一個讀取器對象,它將迭代給定csv文件中的行。#屬性:csv.reader().dialectcsv.reader().line_numcsv.writer(f,dialect='excel',**fmtparams)#返回一個編寫器對象,負責將用戶的數據轉換為給定類文件對象上的分隔字符串#屬性方法:writer.writerowwriter.writerowswriter.dialectcsv.DictReader()#字典讀#方法:csv.DictReader().__next__()#稱之為next(reader)#屬性:csvreader.dialect#解析器使用的方言的只讀描述。csvreader.line_num#從源迭代器讀取的行數。這與返回的記錄數不同,因為記錄可以跨越多行。csvreader.fieldnames#從文件中讀取第一條記錄時初始化此屬性csv.DictWriter()#方法:csvwriter.writerow(row)#將row寫入writer的文件對象,根據當前方言進行格式化。支持迭代csvwriter.writerows(rows)#將行中的所有元素寫入編寫器的文件對象,并根據當前方言進行格式化。支持迭代DictWriter.writeheader()#公共方法:用字段名稱寫一行#屬性:csvwriter.dialect#使用的方言只讀描述#返回所有已注冊方言的名稱。#數據讀取#importcsv#withopen(r'C:\Users\Alienware\Desktop\test.csv','r')asf:#all=csv.reader(f)#讀取所有數據返回一個csv對象#print(type(all))#foriinall:#遍歷csv對象返回csv文件中的所有數據list類型#print(i)#數據寫入importcsv#newline=''表示新行用空字符表示這樣換行寫入數據時就不會出現空行withopen(r'C:\Users\Alienware\Desktop\test.csv','a',newline='')asf:all=csv.writer(f)#傳入列表類型的數據第一個元素對應第一列第二個元素對應第二列#all.writerow(['admin',7])#一行一行寫入all.writerows([['name','zhangsan'],['class','baoan10']])#多行寫入本文由培訓無憂網千鋒教育專屬課程顧問整理發布,希望能夠對想學習Python開發培訓的同學有所幫助。更多Python開發培訓課程歡迎關注培訓無憂網Python開發培訓頻道或添加老師微信:15033336050...