七 檔案處理

2022-07-21 05:06:11 字數 1609 閱讀 1907

檔案操作(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...