Python匯入效能 import載入測試

2021-05-24 01:55:19 字數 1205 閱讀 8725

在使用python中,import是非常非常常用的。

那它效能怎麼樣呢?今天就想測測python的import效能。

首先,我這種測試,肯定不怎麼準,充其量只能提供個參照,大家看看,就圖乙個樂呵吧。

● linux下,用time.time()進行的測試

因為賦值操作是語言的最基礎操作,所以以賦值操作作為基準,做對比。

▲首先,確定賦值操作(a=1)的時間消耗:

3.09944152832e-06  (0.000003 s)

▲然後,我們來做一下import的測試:

1,如果匯入某個自定義模組的py檔案:

0.00202393531799   (平均0.002s)

▲匯入匯入某個自定義模組的pyc檔案:

0.000988006591797  (匯入pyc,速度快了一倍。平均0.001s )

▲把自定義模組放在python的安裝目錄下:

0.000210046768188  (提高了乙個數量級!我沒看錯吧!)

▲匯入系統自帶的os模組os.pyc:

5.96046447754e-06  (為什麼匯入os模組,速度如此驚人呢?!)

▲匯入系統自帶的socket模組socket.pyc

0.00739884376526  (匯入socket模組pyc)

▲匯入第三方模組:

0.0939381122589  (這個速度,也算可以接受)

▲匯入第三方模組:

twisted.internet.protocol.protocol

0.144118070602  (匯入twisted這個第三方模組很耗效能啊……)

———————————————————————————————

● windows下,用time.clock()進行的測試

▲首先,確定賦值操作的時間消耗:

1.56498194252e-006

▲匯入系統自帶的os模組os.pyc:

5.10494109683e-006  (可以看出與linux的速度幾乎相同)

▲匯入匯入某個自定義模組的pyc檔案:

0.0225309700273  (似乎比linux慢一些……)

總結:個人估計,python的匯入,就是動態讀檔案的過程。檔案大,讀的就慢。如果不把匯入模組設計好,似乎會形成效能上的瓶頸。

除非是研究python底層的實現,才能搞懂匯入是怎麼回事,才能理解和突破速度瓶頸。

Python包 模組和包匯入詳解(import)

1.模組 module 1.1 模組定義 通常模組為乙個.py檔案,其他可作為module的檔案型別還有 pyo pyc pyd so dll module 可看作乙個工具類,可共用或者隱藏 細節,將相關 放置在乙個module以便讓 更好用 易懂,讓coder重點放在高層邏輯上。module能定義...

Python學習之路 模組詳解及import本質上

1.定義 模組 用來從邏輯上組織python 變數,函式,類,邏輯 實現乙個功能 本質就是.py結尾的python檔案。檔名 test.py,對應的模組名 test 包 用來從邏輯上組織模組的,本質是乙個資料夾或者目錄 必須帶乙個 init py檔案 2.匯入方法 import module nam...

Python匯入效能 import載入測試

在使用python中,import是非常非常常用的。那它效能怎麼樣呢?今天就想測測python的import效能。首先,我這種測試,肯定不怎麼準,充其量只能提供個參照,大家看看,就圖乙個樂呵吧。linux下,用time.time 進行的測試 因為賦值操作是語言的最基礎操作,所以以賦值操作作為基準,做...