①讀檔案:
f =
open
('/users/michael/test.txt'
,'r'
)#開啟檔案
f.read(
)#讀檔案
f.close(
)#關閉檔案
②由於檔案讀寫時都有可能產生ioerror
,一旦出錯,後面的f.close()
就不會呼叫。所以,為了保證無論是否出錯都能正確地關閉檔案,我們可以使用try ... finally
來實現:
try
: f =
open
('/path/to/file'
,'r'
)print
(f.read())
finally
:if f:
f.close(
)
簡化:和前面的try ... finally
是一樣的,但是**更佳簡潔,並且不必呼叫f.close()
方法。
with
open
('/path/to/file'
,'r'
)as f:
print
(f.read())
#注意縮排
③讀取二進位制檔案(rb
讀取):
with
open
('e:/自主學習/python/test.bmp'
,'rb'
)as f:
print
(f.read(
))
with
open
('/users/michael/test.txt'
,'w'
)as f:
#檔案會覆蓋
f.write(
'hello, world!'
)with
open
('e:/自主學習/python/test.txt'
,'a'
)as f:
#追加填寫
f.write(
'\nhello, world!'
)
stringio和bytesio:在記憶體中讀寫str和bityes資料
操作檔案和目錄:在不同系統中操作檔案和目錄
序列化:把變數從記憶體中變成可儲存或傳輸的過程稱之為序列化,在python中叫pickling。
反序列化:反過來,把變數內容從序列化的物件重新讀到記憶體裡稱之為反序列化,即unpickling。
①序列化之後,就可以把序列化後的內容寫入磁碟,或者通過網路傳輸到別的機器上。
json:如果我們要在不同的程式語言之間傳遞物件,就必須把物件序列化為標準格式,比如xml,但更好的方法是序列化為json,因為json表示出來就是乙個字串,可以被所有語言讀取,也可以方便地儲存到磁碟或者通過網路傳輸。
Python 序列化和反序列化
在spark中使用廣播變數時,選擇合適的序列化格式是非常重要的。這裡重點講的是python中的序列化。1.序列化和反序列化 序列化就是把資料變成可儲存或可傳輸的過程的,只有序列化後的資料才可以寫入到磁碟或者通過網路傳輸到spark集群的其他節點上。反序列化則相反,反序列就是把序列化的變數重新轉到記憶...
python序列化和反序列化
序列化和反序列化 程式執行的過程中,所有變數都是在記憶體中操作的,當程式一旦執行完畢,結束退出後,變數占有的記憶體就被作業系統 了。因此我們需要將某些資料持久化儲存到磁碟中,下次執行的時候從磁碟中讀取相關資料。我們將變數從記憶體中變成可以儲存或傳輸的過程稱之為序列化,在python中叫做pickli...
Python序列化與反序列化
序列化 將python裡的基本型別如字典 列表 陣列等序列化為字串 反序列化 將字串反序列化為python裡的基本型別如字典 列表等 常用 json r requests.get 杭州 r.encoding utf 8 print r.text print dic json.loads r.text...