檔案操作(io操作)
檔案操作和遠端網路都可以統稱為:io操作。
文字檔案和二進位制檔案
文字檔案儲存的是普通字元,python是預設unicode碼,可以用記事本開啟,二進位制檔案是位元組儲存,無法用記事本開啟,用其他軟體開啟。
建立檔案物件open()
f=open(r"d\a.txt","r"),這裡要注意,在開啟檔案物件以後,要進行f物件的關閉 ,close(),不僅僅是關閉檔案物件,此關閉也關閉了作業系統開啟的硬碟,釋放了作業系統 開啟硬碟的這部分資源。
亂碼:
windows作業系統預設編碼是ascii碼,linux預設是utf-8,python程式進行編碼是unicode,open方式開啟乙個檔案,在windows下,作業系統存入磁碟是以ascii碼的方式存入的,但是開啟,因為是python進行的編碼,所以開啟,預設是utf-8(unicode的共識形式)的形式,就會產生亂碼 。核心:亂碼就是編碼和解碼不一致導致的。
close()關閉檔案流
由於檔案底層是由作業系統控制的,所以在呼叫close()方法的時候,首先會把緩衝
區資料寫入檔案,或者直接手動寫下flush()方法,在關閉檔案。
with語句(上下文管理器)
with關鍵字(上下文管理器)可以自動管理檔案資源,不論什麼原因跳出with塊,
都確保檔案的正常關閉,並且可以在**執行完畢後,還原進入該**的現場。
1)read(size):讀取字元個數
2)readline():一行行讀取
enumerate()函式生成列表內的元組序列,可以進行行的分層。
seek(偏移量) 0表示從檔案頭開始計算、1表示從當前位置開始計算、2從檔案尾部開始
計算,其他數字表示真正的偏移量。
使用pickle序列化
python一切皆物件,本質就是"儲存資料的記憶體塊",將這些記憶體的資料按照一定順序存在磁碟中(網路中其他機器),就叫做序列化,反之變成記憶體物件就是反序列化。
序列化:
pickle.dump(obj,file)
反序列化:
pickle.load(file)生成新的物件,和序列化之前的物件是不同的物件
csv檔案的操作
csv是逗號分隔符文字格式,常常用於資料交換、excel檔案和資料庫資料的匯入匯出
。csv.reader()進行讀操作;csv.writer()進行寫操作
os和os.path模組
os模組可以幫忙我們直接對作業系統進行操作。
os.system可以直接呼叫系統的命令
os.startfile可以呼叫可執行檔案
os.path 模組提供了目錄相關的操作
os.walk()遞迴變數所有檔案和目錄
shutil模組(拷貝和壓縮),對於os模組的乙個補充
zipfile模組,也可以進行壓縮,解壓
Python資料科學基礎(七) 檔案處理
檔案處理 1.檔案操作三步走 開啟 讀寫 關閉。open file,mode r buffering 1,encoding none,errors none,newline none,closefd true,opener none 2.檔案開啟模式模式 說明r讀模式 預設模式,可省略 如果檔案不存...
190328檔案處理
開啟檔案,得到檔案控制代碼並賦值給乙個變數 通過檔案控制代碼對檔案進行操作 關閉檔案 漢皇重色思傾國,御宇多年求不得。楊家有女初長成,養在深閨人未識。天生麗質難自棄,一朝選在君王側。回眸一笑百媚生,六宮粉黛無顏色。春寒賜浴華清池,溫泉水滑洗凝脂。侍兒扶起嬌無力,始是新承恩澤時。f open 長恨歌 ...
3 02 檔案處理
給你乙個檔案 txt 如何檢視內容?1.安裝文字編輯器軟體 2.利用文字編輯器軟體開啟 3.檢視 or 寫入 4.儲存,關閉 檔案操作分為讀 寫 修改 我們先從讀開始學習 f open file e 魯佳 python txt mode r encoding gbk data f.read f.cl...