小白也能學會系列:用python文件讀寫代碼實例!(簡單案例)

前言:

不久之前,從一個.dat文件中讀取波形數據,通過一個自編碼網絡進行異常檢測。所以特意在此寫出來,咱從最基礎的文件讀寫開始吧。

先說數據,是一個int16型的數組。說是數組,但是讀取也並不簡單。衆所周知,數據在計算機中是用二進制的形式儲存的。int16型有符號整數。16位,16bit,也就是兩個字節。那麼自然而然的想到,讀取兩個字節(bytes)的數據(也就是16bit),然後把它轉化成int16的整型(即十進制整型)。數據就變得可以處理了。

12192974-6d775897236459e3
小白也能學會系列:用python文件讀寫代碼實例!(簡單案例)

先放一個不同位數的整型數據範圍吧,經常會用的到。

12192974-9fcb25743d6bffd8
小白也能學會系列:用python文件讀寫代碼實例!(簡單案例)

這裏補充一個小知識點,python3中的int類型是動態長度的,是長整型,理論支持無限大的數字。對一個int型實例運行內建的sizeof方法,可以查看佔用的字節數。其中0佔了24個字節,其他數字一般佔用28個字節。

讀文件:文本文件

12192974-7be65537fcdf4f63
小白也能學會系列:用python文件讀寫代碼實例!(簡單案例)

首先在python3中,字符串類型(str)包含的是Unicode characters。這種特性使得我們在python3中可以定義包含Unicode character的字符串,並甚至可以在變量標識符中使用非ASCII字符。

那麼以上的代碼做的是這樣一件事:定義一個文件對象,文件對象標明將用讀字符的手段來讀取這個文件中的內容。

    >>> f.read()
   'Hello, world!'

上面的代碼一次性讀取文件的全部內容,把內容讀到內存,用str對象表示。

此外還可以調用read(size),每次讀取size個字節的內容。或者調用readline(),每次讀取一行內容。將每一行的內容存在str裏,並返回一個str的列表。

爲了保證文件被關閉,可以使用with關鍵詞:

12192974-d031bd7076994b2c
小白也能學會系列:用python文件讀寫代碼實例!(簡單案例)

讀取非UTF-8編碼的文本文件,需要給open()函數傳入encoding參數,例如,讀取GBK編碼的文件:

12192974-ca7f58534f249b07
小白也能學會系列:用python文件讀寫代碼實例!(簡單案例)

二進制文件:

如果要讀取二進制文件,用rb模式打開文件即可。

12192974-eb75d6129a1be230
小白也能學會系列:用python文件讀寫代碼實例!(簡單案例)

寫文件:

寫文件和讀文件是一樣的,調用open()函數時,傳入'w'或者'wb'表示寫文本文件或者寫二進制文件。

以上就是本文的全部內容,希望對大家的學習有所幫助。

python交流羣:877562786(羣裏含大量學習資料,面試寶典等)

發佈了210 篇原創文章 · 獲贊 38 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章