您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“Python種導(dǎo)入模塊的三種方式是什么”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
1 . import
>>> import sys
>>> sys.path
['', 'C:\\Python34\\Lib\\idlelib', 'C:\\Windows\\system32\\python34.zip', 'C:\\Python34\\DLLs', 'C:\\Python34\\lib', 'C:\\Python34', 'C:\\Python34\\lib\\site-packages']
最常見的方式,直接將要導(dǎo)入的模塊名稱寫在后面導(dǎo)入。
2 .from … import …
與import類似,只是更明確的要導(dǎo)入的方法或變量,比如:
>>> from sys import path
>>> path
['', 'C:\\Python34\\Lib\\idlelib', 'C:\\Windows\\system32\\python34.zip', 'C:\\Python34\\DLLs', 'C:\\Python34\\lib', 'C:\\Python34', 'C:\\Python34\\lib\\site-packages']
但是會造成命名空間的污染,更推薦使用import。
3 . 用名稱字符串導(dǎo)入模塊
我們可能想這樣導(dǎo)入模塊:
>>> import "sys"
SyntaxError: invalid syntax
python import接收的是變量而不是字符串,那將”sys”賦值給一個變量呢?
>>> x="sys"
>>> import x
Traceback (most recent call last):
File "", line 1, in
import x
ImportError: No module named 'x'
這樣也不行,這樣做的意思是導(dǎo)入名為x的模塊而非x代表的sys模塊。
我們需要用到exec函數(shù):
>>> x="sys"
>>> exec("import "+ x)
>>> sys.path鄭州哪個婦科醫(yī)院好 http://www.sptdfk.com/
['', 'C:\\Python34\\Lib\\idlelib', 'C:\\Windows\\system32\\python34.zip', 'C:\\Python34\\DLLs', 'C:\\Python34\\lib', 'C:\\Python34', 'C:\\Python34\\lib\\site-packages']
將導(dǎo)入語句構(gòu)建成字符串并傳遞給exec函數(shù)執(zhí)行。
exec缺點(diǎn)是每次執(zhí)行都要編譯,運(yùn)行多次會影響性能。
更好的方式是使用__import__ 函數(shù)。
>>> x="sys"
>>> sys = __import__(x)
>>> sys.path
['', 'C:\\Python34\\Lib\\idlelib', 'C:\\Windows\\system32\\python34.zip', 'C:\\Python34\\DLLs', 'C:\\Python34\\lib', 'C:\\Python34', 'C:\\Python34\\lib\\site-packages']
這種方式需要一個變量保存模塊對象,以便后續(xù)調(diào)用。
“Python種導(dǎo)入模塊的三種方式是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。