在使用django開發的平台中,支援使用者自定義函式,但是每次使用者進行修改編輯後,該模組內容已更改,然後重新匯入該模組,但是python 會認為「我已經匯入了該模組,不需要再次讀取該檔案」,所以更改將無效。 因此,每次更改檔案的內容時,都必須退出並重新啟動django。 使用python開發後台服務程式的時候,每次修改**之後都需要重啟服務才能生效比較麻煩
要解決這個問題,有以下幾種方式:
最簡單、最有效的方法:重新啟動 django。但是,這也有缺點,特別是丟失了 django命名空間中存在的資料以及其他匯入模組中的資料。
對於簡單的情況,可以使用 python 的reload()函式。在許多情況下,在編輯乙個模組之後使用
這裡主要是介紹第二種方式:
reload()是 python 提供的內建函式,在不同的 python 版本中有不同的表現形式:
python2.7可以直接用reload():
python2 內建函式reload(module)
python3可以用下面幾種方法:
方法一:基本方法
from imp import reload
reload(module)
方法二:
import imp
imp.reload(module)
方法三:
import importlib
importlib.reload(module)
方法四:
from importlib import reload
reload(module)
說明:module 必須是已經成功匯入的模組
匯入是乙個開銷很大的操作。
野路子解決python import的問題
碰到了這樣乙個問題 就是寫乙個註冊的後端程式 然後想分檔案寫,檢視函式寫在main.py裡面 然後註冊程式寫在registeraction.py裡面 然後在registeraction.py裡寫了乙個add user username,password,email 自己除錯的時候,給這個函式傳3個引...
Python import過程解析
模組 乙個.py檔案 包 乙個資料夾,裡面一定包括乙個 init py檔案,可能包括子包和模組 module.py a 1 print module.py test.py import module print module.a 執行test.py,執行結果 module.py 1結論 import...
python import模組方法
python語言中import的使用很簡單,直接使用import module name語句匯入即可。這裡我主要寫一下 import 的本質。模組 module 用來從邏輯 實現乙個功能 上組織python 變數 函式 類 本質就是 py檔案。檔案是物理上組織方式 module name.py 模組...