python導(dǎo)入庫(kù)的具體方法
python使用import 導(dǎo)入模塊的語(yǔ)法,主要有以下兩種:
import 模塊名1 [as 別名1], 模塊名2 [as 別名2],…: 導(dǎo)入整個(gè)模塊。from 模塊名 import 成員名1 [as 別名1],成員名2 [as 別名2],…: 導(dǎo)入模塊中指定成員。
上面兩種 import 語(yǔ)句的區(qū)別主要有以下幾點(diǎn):
第一種 import 語(yǔ)句導(dǎo)入整個(gè)模塊內(nèi)的所有成員(包括變量、函數(shù)、類等);第二種 import 語(yǔ)句只導(dǎo)入模塊內(nèi)的指定成員(除非使用 form 模塊名 import *,但通常不推薦使用這種語(yǔ)法)。
python學(xué)習(xí)網(wǎng),大量的免費(fèi)python視頻教程,歡迎在線學(xué)習(xí)!
當(dāng)使用第一種 import 語(yǔ)句導(dǎo)入模塊中的成員時(shí),必須添加模塊名或模塊別名前綴;使用第二種 import 語(yǔ)句導(dǎo)入模塊中的成員時(shí),無須使用任何前綴,直接使用成員名或成員別名即可。
下面程序使用導(dǎo)入整個(gè)模塊的最簡(jiǎn)單語(yǔ)法來導(dǎo)入指定模塊:
# 導(dǎo)入sys整個(gè)模塊import sys# 使用sys模塊名作為前綴來訪問模塊中的成員print(sys.argv[0])
上面第 2 行代碼使用最簡(jiǎn)單的方式導(dǎo)入了 sys 模塊,因此在程序中使用 sys 模塊內(nèi)的成員時(shí),必須添加模塊名作為前綴。
運(yùn)行上面程序,可以看到如下輸出結(jié)果(sys 模塊下的 argv 變量用于獲取運(yùn)行 Python 程序的命令行參數(shù),其中 argv[0] 用于獲取該 Python 程序的程序名)。
import test.py
在導(dǎo)入整個(gè)模塊時(shí)可以為模塊指定別名。例如如下程序:
# 導(dǎo)入sys整個(gè)模塊,并指定別名為simport sys as s# 使用s模塊別名作為前綴來訪問模塊中的成員print(s.argv[0])
第2行代碼在導(dǎo)入 sys 模塊時(shí)才指定了別名 s,因此在程序中使用 sys 模塊內(nèi)的成員時(shí),必須添加模塊別名 s 作為前綴。運(yùn)行該程序,可以看到如下輸出結(jié)果:
import test2.py
使用導(dǎo)入整個(gè)模塊的語(yǔ)法也可一次導(dǎo)入多個(gè)模塊,多個(gè)模塊之間用逗號(hào)隔開。例如如下程序:
# 導(dǎo)入sys、os兩個(gè)模塊import sys,os# 使用模塊名作為前綴來訪問模塊中的成員print(sys.argv[0])# os模塊的sep變量代表平臺(tái)上的路徑分隔符print(os.sep)
知識(shí)點(diǎn)擴(kuò)展:
自動(dòng)導(dǎo)入任意缺失的庫(kù)實(shí)例方法:
# 以下代碼在 python 3.6.1 版本驗(yàn)證通過import sysimport osfrom importlib import import_moduleclass AutoInstall(): _loaded = set() @classmethod def find_spec(cls, name, path, target=None): if path is None and name not in cls._loaded: cls._loaded.add(name) print('Installing', name) try: result = os.system(’pip install {}’.format(name)) if result == 0: return import_module(name) except Exception as e: print('Failed', e) return Nonesys.meta_path.append(AutoInstall)
到此這篇關(guān)于python導(dǎo)入庫(kù)的具體方法的文章就介紹到這了,更多相關(guān)python如何導(dǎo)入庫(kù)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Android打包篇:Android Studio將代碼打包成jar包教程2. Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼3. SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)4. Springboot 全局日期格式化處理的實(shí)現(xiàn)5. vue實(shí)現(xiàn)web在線聊天功能6. 解決Android Studio 格式化 Format代碼快捷鍵問題7. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問題8. JavaScript實(shí)現(xiàn)頁(yè)面動(dòng)態(tài)驗(yàn)證碼的實(shí)現(xiàn)示例9. Java使用Tesseract-Ocr識(shí)別數(shù)字10. JavaEE SpringMyBatis是什么? 它和Hibernate的區(qū)別及如何配置MyBatis
