您好,登錄后才能下訂單哦!
Python中Importlib與__import__指的是什么?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!
Importlib模塊與__import__都可以通過過字符串來導入另外一個模塊,但在用法上和本質上都有很大的不同。
以一個例子為證:
以下為我的工程目錄結構:
lib/test.py:
name = "Jack" def getName(): print(name) return name
demo.py:
name = "Amy" def getName(): print(name) return name
Importlib模塊的例子:
testImportlib.py:
import importlib mName = "lib.test" module = importlib.import_module(mName) module.getName()
Importlib是python的一個庫,通過導入importlib,調用import_module()方法,傳入用戶想要獲取的模塊對應的路徑字符串,即可獲取一個,模塊module,module可以調用這個test模塊下的所有屬性和方法。
運行截圖:
__import__的例子:
__import__是python的一個內置方法,直接調用__import__()即可獲取一個模塊。
testImport.py:
mName = "demo" module = __import__(mName) module.getName()
此時調用的是相同目錄下的demo模塊,可順利地獲取這個模塊,那么當不再同一個目錄下呢?
修改testImport.py:
mName = "lib.test" module = __import__(mName) module.getName()
此時的運行結果為:
出錯提示為,當前的模塊'lib'沒有getName()這個方法,因此沒有正確獲取到test模塊。
繼續修改此文件:
mName = "lib.test" module = __import__(mName,fromlist = ('test',)) module.getName()
運行結果為:
當加上fromlist屬性即可正確獲取。
感謝各位的閱讀!看完上述內容,你們對Python中Importlib與__import__指的是什么大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。