Python中幾種導入模塊的方式總結
模塊內部封裝了很多實用的功能,有時在模塊外部調用就需要將其導入。常見的方式有如下幾種:
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']
最常見的方式,直接將要導入的模塊名稱寫在后面導入。
2 .from .. import ..
與import類似,只是更明確的要導入的方法或變量,比如:
>>> 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 . 用名稱字符串導入模塊
我們可能想這樣導入模塊:
>>> import "sys" SyntaxError: invalid syntax
python import接收的是變量而不是字符串,那將”sys”賦值給一個變量呢?
>>> x="sys" >>> import x Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> import x ImportError: No module named 'x'
這樣也不行,這樣做的意思是導入名為x的模塊而非x代表的sys模塊。
我們需要用到exec函數:
>>> x="sys"
>>> exec("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']
將導入語句構建成字符串并傳遞給exec函數執(zhí)行。
exec缺點是每次執(zhí)行都要編譯,運行多次會影響性能。
更好的方式是使用__import__ 函數。
>>> 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ù)調用。
以上這篇Python中幾種導入模塊的方式總結就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python用摘要算法生成token及檢驗token的示例代碼
這篇文章主要介紹了Python用摘要算法生成token及檢驗token的示例代碼,幫助大家更好的理解和學習python,感興趣的朋友可以了解下2020-12-12
詳解Python中表達式i += x與i = i + x是否等價
這篇文章主要介紹了關于Python中表達式i += x與i = i + x是否等價的相關資料,文中通過示例代碼介紹的很詳細,相信對大家具有一定的參考價值,有需要的朋友們下面來一起看看吧。2017-02-02

