一、i0流
定義 :
io流主要說的是計算機的輸入輸出操作。但是在python裡的io流主要指的是記憶體和磁碟之間的資料流動。
在python中,以記憶體為參照,將io流分為輸入流和輸出流。
python中io流的操作—open函式
open函式的主要功能是開啟本地檔案
open函式的引數
1、file
表示要開啟檔案的路徑,開啟當前目錄下的檔案時可以不寫路徑。
2、mode
a.open("b.txt",mode="r")
a.read() #預設read(size=-1),表示讀到檔案的末尾。
a.open("b.txt",mode="w")
a.write("要寫入的內容") #會覆蓋掉原資料。
a.open("b.txt",mode="x") #建立乙個b.txt檔案並以mode="r"的方式開啟
a.write("要追加的內容") #不會覆蓋掉原資料。
a.open("b.txt",mode="a")
a.write("要追加的內容") #不會覆蓋掉原資料。
a.open("b.txt",mode="t") #以字元流的形式開啟檔案(預設)
a.open("b.txt",mode="b") #以位元組流的形式開啟檔案
a.open("b.txt",mode="+") #mode="+" 等同於mode="r" + mode="w"
4、flush()
重新整理快取區,使更改生效。在每次執行close的時候會自動執行fiush()
a.flush()
3、close()
關閉io流
a.close()
注:io流在使用時會占用記憶體資源,所以在使用完成後需要立馬關閉。
二、物件序列化
將記憶體中的物件轉換成位元組或字元資料的過程。
1、pickle-將物件轉化為位元組資料
首先要進行導包import pickle
pickle.dumps(物件) #將物件轉換成位元組資料(序列化)
pickle.loads(物件) #將二進位制資料轉換為物件(反序列化)
2、json-將物件轉化為字元資料(建議對字典物件進行轉化)
json.dumps(物件) #將物件轉換成字元資料(序列化)
json.loads(物件) #將字元資料轉換物件(反序列化)
IO流學習筆記
使用緩衝流時,不需要自定義位元組或字元陣列,緩衝流自帶有緩衝區。緩衝流是包裝流,關閉流時,只需要關閉外層的流,內部的流會自動關閉。通過轉換流可以將位元組流轉換為字元流 標準的輸出流,預設輸出到控制台,但是可以設定標準輸出流的輸出方向 呼叫setout方法 不需要手動呼叫close方法去關閉 資料流可...
IO流學習筆記
位元組流 字元流 輸入流 inputstream reader 輸出流 outputstream writer 檔案流 fileinputstream,filereader,fileoutputstream,filewriter 緩衝流 bufferedinputstream,bufferedrea...
Java學習筆記 IO流
inputstream和outputstream是抽象類,他們是所有位元組輸入流和輸出流的父類。public static void main string args throws ioexceptionpublic static void main string args throws ioexc...