1. 程式人生 > >Tensorflow—模組的作用

Tensorflow—模組的作用

1,在機器學習中,我們常常需要把訓練好的模型儲存起來,這樣在進行決策時直接將模型讀出,而不需要重新訓練模型,這樣就大大節約了時間。Python提供的pickle模組就很好地解決了這個問題,它可以序列化物件並儲存到磁碟中,並在需要的時候讀取出來,任何物件都可以執行序列化操作。

Pickle模組中最常用的函式為:

(1)pickle.dump(obj, file, [,protocol])

        函式的功能:將obj物件序列化存入已經開啟的file中。

       引數講解:

  • obj:想要序列化的obj物件。
  • file:檔名稱。
  • protocol:序列化使用的協議。如果該項省略,則預設為0。如果為負值或HIGHEST_PROTOCOL,則使用最高的協議版本。

(2)pickle.load(file)

        函式的功能:將file中的物件序列化讀出。

        引數講解:

  • file:檔名稱。

(3)pickle.dumps(obj[, protocol])

       函式的功能:將obj物件序列化為string形式,而不是存入檔案中。

       引數講解:

  • obj:想要序列化的obj物件。
  • protocal:如果該項省略,則預設為0。如果為負值或HIGHEST_PROTOCOL,則使用最高的協議版本。

(4)pickle.loads(string)

       函式的功能:從string中讀出序列化前的obj物件。

       引數講解:

  • string:檔名稱。

     【注】 dump() 與 load() 相比 dumps() 和 loads() 還有另一種能力dump()函式能一個接著一個地將幾個物件序列化儲存到同一個檔案中,隨後呼叫load()來以同樣的順序反序列化讀出這些物件。

2,Image模組提供了一個相同名稱的類,即image類,用於表示PIL影象。這個模組還提供了一些函式,包括從檔案中載入影象和建立新的影象。

Image模組是PIL中最重要的模組,它提供了諸多影象操作的功能,比如建立、開啟、顯示、儲存影象等功能,合成、裁剪、濾波等功能,獲取影象屬性功能,如影象直方圖、通道數等

3,sys.path 與 os.path

(1)sys.path--動態的改變python路徑

如果python中匯入的package或module不在環境變數PATH中,那麼可以使用sys.path將要匯入的package或module加入到PATH環境變數中。

  1. import sys  
  2. sys.path.append(’引用模組的地址')  
  3. #或者
  4. import sys  
  5. sys.path.insert(0'引用模組的地址')  
  sys.path是個列表,所以在末尾新增目錄是很容易的,用sys.path.append就行了。當這個append執行完之後,新目錄即時起效,以後的每次import操作都可能會檢查這個目錄。如同解決方案所示,可以選擇用sys.path.insert(0,…)這樣新新增的目錄會優先於其他目錄被import檢查。

   即使sys.path中存在重複,或者一個不存在的目錄被不小心新增進來,也沒什麼大不了,Python的import語句非常聰明,它會自己應付這類問題。但是,如果每次import時都發生這種錯誤(比如,重複的不成功搜尋,作業系統提示的需要進一步處理的錯誤),我們會被迫付出一點小小的效能代價。

(2)os.path

  1. os.path.abspath(path)  #返回絕對路徑
  2. os.path.split(path     #將path分割成目錄和檔名二元組返回
  3. os.path.dirname(path)  #返回path的目錄。其實就是os.path.split(path)的第一個元素
  4. os.path.basename(path) #返回path最後的檔名
  5. os.path.exists(path)   #如果path存在,返回True;如果path不存在,返回False
  6. os.path.isabs(path)    #如果path是絕對路徑,返回True
  7. os.path.isfile(path)   #如果path是一個存在的檔案,返回True。否則返回False
  8. os.path.isdir(path)    #如果path是一個存在的目錄,則返回True。否則返回False
  9. os.path.getatime(path) #返回path所指向的檔案或者目錄的最後存取時間
  10. os.path.getmtime(path) #返回path所指向的檔案或者目錄的最後修改時間 
  11. s.path.join(path1[, path2[, ...]])  #將多個路徑組合後返回,第一個絕對路徑之前的引數將被忽略。
  12. >>> os.path.join('c:\\', 'csv', 'test.csv')  
  13. 'c:\\csv\\test.csv'
  14. >>> os.path.join('windows\temp''c:\\', 'csv', 'test.csv')  
  15. 'c:\\csv\\test.csv'
  16. >>> os.path.join('/home/aa','/home/aa/bb','/home/aa/bb/c')  
  17. '/home/aa/bb/c'

4.python中type()函式可以檢視一個python物件的資料型別

5.python中沒有null,但是None。python中None的含義和其他語言中null是一樣的。