IO操做

文件讀寫:python

  讀:open(文件名,標識符),標識符:' r '(讀)、' rb '(讀取二進制文件)json

  寫:open(文件名,標識符),標識符:' w '(寫)、' wb '(寫二進制文件)緩存

    read():能夠一次讀取文件的所有內容。網絡

    write():當咱們寫文件時,操做系統每每不會馬上把數據寫入磁盤,而是放到內存緩存起來,空閒的時候再慢慢寫入。只有調用close()方法時,操做系統才保證把沒有寫入的數據所有寫入磁盤。函數

    close():關閉文件spa

內存讀寫:操作系統

  StringIO:在內存中讀寫str。code

   BytesIO:在內存中讀寫bytes。對象

操做文件和目錄:

  操做文件和目錄的函數一部分放在os模塊中,一部分放在os.path模塊中。ip

    查看當前目錄的絕對路徑:os.path.abspath('.')

    在某個目錄下建立一個新目錄,首先把新目錄的完整路徑表示出來:os.path.join('/Users/michael', 'testdir'),後建立一個目錄:os.mkdir('/Users/michael/testdir')

    刪掉一個目錄:os.rmdir('/Users/michael/testdir')

    合併路徑:os.path.join()

    拆分路徑:os.path.split()

序列化:把變量從內存中變成可存儲或傳輸的過程。

  序列化(pickling)以後,就能夠把序列化後的內容寫入磁盤,或者經過網絡傳輸到別的機器上。

   反序列化(unpickling):把變量內容從序列化的對象從新讀到內存裏。

   Python提供了pickle模塊來實現序列化。

    pickle.dumps()方法把任意對象序列化成一個bytes

    pickle.dump()直接把對象序列化後寫入一個file-like Object

  當咱們要把對象從磁盤讀到內存時,能夠先把內容讀到一個bytes,而後用pickle.loads()方法反序列化出對象,也能夠直接用pickle.load()方法從一個file-like Object中直接反序列化出對象

  JSON:一種標準格式,表示出來就是一個字符串,能夠被全部語言讀取,能夠方便地存儲到磁盤或者經過網絡傳輸。

    JSON表示的對象就是標準的JavaScript語言的對象,JSON和Python內置的數據類型對應以下:

JSON類型 Python類型
{} dict
[] list
"string" str
1234.56 int或float
true/false True/False
null None

 

    Python內置的json模塊提供了很是完善的Python對象到JSON格式的轉換。

      dumps()方法返回一個str,內容就是標準的JSON。相似的,dump()方法能夠直接把JSON寫入一個file-like Object

      要把JSON反序列化爲Python對象,用loads()或者對應的load()方法,前者把JSON的字符串反序列化,後者從file-like Object中讀取字符串並反序列化。

相關文章
相關標籤/搜索