關(guān)于python導(dǎo)入模塊import與常見(jiàn)的模塊詳解
0.什么是python模塊?干什么的用的?
Java中如果使用abs()函數(shù),則需要需要導(dǎo)入Math包,同樣python也是封裝的,因?yàn)閜ython提供的函數(shù)太多,所以根據(jù)函數(shù)的功能將其封裝在不同的module模塊中。就這樣的話(huà),pthon提供的module還是海量的,所以除非使用某個(gè)模塊里的某個(gè)函數(shù)時(shí)才會(huì)將其導(dǎo)入程序中。所以你使用某個(gè)函數(shù)前,要先知道他在哪個(gè)module里,然后將這個(gè)模塊導(dǎo)入當(dāng)前程序,然后才能調(diào)用這個(gè)模塊里的函數(shù)。
當(dāng)然 python的模塊分為用戶(hù)自定義的和系統(tǒng)提供的。Python提供一套很有用的標(biāo)準(zhǔn)庫(kù)(standard library)。標(biāo)準(zhǔn)庫(kù)會(huì)隨著Python解釋器,綁定在python的安裝包里,直到裝載到你的操作系統(tǒng)里。 它是Python的一個(gè)組成部分。這些標(biāo)準(zhǔn)庫(kù)是Python為你準(zhǔn)備好的利器,可以讓我們編程事半功倍。
1.python中使用關(guān)鍵字import來(lái)導(dǎo)入module
import math import time,calendar #同時(shí)導(dǎo)入多個(gè)模塊
2. 或者from...import 來(lái)導(dǎo)入相應(yīng)的模塊
從某個(gè)模塊中導(dǎo)入某個(gè)函數(shù),格式為: from somemodule import somefunction 從某個(gè)模塊中導(dǎo)入多個(gè)函數(shù),格式為: from somemodule import firstfunc, secondfunc, thirdfunc 將某個(gè)模塊中的全部函數(shù)導(dǎo)入,格式為: from somemodule import * from math import sqrt,acos from time import daylight from math import *
3.導(dǎo)入自定義模塊和reload模塊
#1.導(dǎo)入一個(gè)python模塊時(shí),python解釋器是如何查找這個(gè)模塊是否存在的?python解釋器的默認(rèn)查找路徑? 可以使用如下命令sys.path進(jìn)行查看,python默認(rèn)的查找路徑.因?yàn)槲疫@里python裝在D盤(pán),實(shí)際開(kāi)發(fā)中一般部署在linux上。 可以看出pathon默認(rèn)的查找路徑返回的是一個(gè)列表。 >>> import sys >>> sys.path ['', 'D:\\software\\python3\\python36.zip', 'D:\\software\\python3\\DLLs', 'D:\\software\\python3\\lib', 'D:\\software\\python3', 'D:\\software\\python3\\lib\\site-packages'] 從上面列出的目錄里依次查找要導(dǎo)入的模塊文件 ',' 表示當(dāng)前路徑 #2.如果想修改python默認(rèn)的查找路徑,比如增加自定義的查找路徑 ,修改順序等。 sys.path.append('D:\\pythonworkspace\\\\pythontest') #因?yàn)閟ys.path返回值是列表,可以追加 sys.path.insert(0, 'D:\\pythonworkspace\\\\pythontest') #可以確保先搜索這個(gè)路徑 #3.注意模塊導(dǎo)入后,如果修改以后,要想生效,需要重新導(dǎo)入。但是重新導(dǎo)入用的不是import >>> from imp import * >>> reload(sys) #使用imp 模塊里的reload()命令,對(duì)模塊重新導(dǎo)入 <module 'sys' (built-in)> >>>
4.python常見(jiàn)的模塊,具體全部庫(kù)參考python官網(wǎng)。
標(biāo)準(zhǔn)庫(kù) | 說(shuō)明 |
---|---|
builtins | 內(nèi)建函數(shù)默認(rèn)加載 |
os | 操作系統(tǒng)接口 |
sys | Python自身的運(yùn)行環(huán)境 |
functools | 常用的工具 |
json | 編碼和解碼 JSON 對(duì)象 |
logging | 記錄日志,調(diào)試 |
multiprocessing | 多進(jìn)程 |
threading | 多線程 |
copy | 拷貝 |
time | 時(shí)間 |
datetime | 日期和時(shí)間 |
calendar | 日歷 |
hashlib | 加密算法 |
random | 生成隨機(jī)數(shù) |
re | 字符串正則匹配 |
socket | 標(biāo)準(zhǔn)的 BSD Sockets API |
shutil | 文件和目錄管理 |
glob | 基于文件通配符搜索 |
具體每個(gè)模塊有哪些常用地函數(shù),如何使用,后面會(huì)隨著開(kāi)發(fā)的學(xué)習(xí)逐步帶入到程序中講解
擴(kuò)展庫(kù) | 說(shuō)明 |
---|---|
requests | 使用的是 urllib3,繼承了urllib2的所有特性 |
urllib | 基于http的高層庫(kù) |
scrapy | 爬蟲(chóng) |
beautifulsoup4 | HTML/XML的解析器 |
celery | 分布式任務(wù)調(diào)度模塊 |
redis | 緩存 |
Pillow(PIL) | 圖像處理 |
xlsxwriter | 僅寫(xiě)excle功能,支持xlsx |
xlwt | 僅寫(xiě)excle功能,支持xls ,2013或更早版office |
xlrd | 僅讀excle功能 |
elasticsearch | 全文搜索引擎 |
pymysql | 數(shù)據(jù)庫(kù)連接庫(kù) |
mongoengine/pymongo | mongodbpython接口 |
matplotlib | 畫(huà)圖 |
numpy/scipy | 科學(xué)計(jì)算 |
django/tornado/flask | web框架 |
xmltodict | xml 轉(zhuǎn) dict |
SimpleHTTPServer | 簡(jiǎn)單地HTTP Server,不使用Web框架 |
gevent | 基于協(xié)程的Python網(wǎng)絡(luò)庫(kù) |
fabric | 系統(tǒng)管理 |
pandas | 數(shù)據(jù)處理庫(kù) |
scikit-learn | 機(jī)器學(xué)習(xí)庫(kù) |
以上這篇關(guān)于python導(dǎo)入模塊import與常見(jiàn)的模塊詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)統(tǒng)計(jì)代碼行數(shù)的方法
這篇文章主要介紹了python實(shí)現(xiàn)統(tǒng)計(jì)代碼行數(shù)的方法,涉及Python中os模塊及codecs模塊的相關(guān)使用技巧,需要的朋友可以參考下2015-05-05Python3通過(guò)Luhn算法快速驗(yàn)證信用卡卡號(hào)的方法
這篇文章主要介紹了Python3通過(guò)Luhn算法快速驗(yàn)證信用卡卡號(hào)的方法,涉及Python中Luhn算法的使用技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-05-05Python中如何將一個(gè)類(lèi)方法變?yōu)槎鄠€(gè)方法
這篇文章主要介紹了Python中如何將一個(gè)類(lèi)方法變?yōu)槎鄠€(gè)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Pandas讀取excel合并單元格的正確方式(openpyxl合并單元格拆分并填充內(nèi)容)
Excel文件中可能包含合并單元格的數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于Pandas讀取excel合并單元格的正確方式,主要介紹的openpyxl合并單元格拆分并填充內(nèi)容,需要的朋友可以參考下2023-06-06利用Python實(shí)現(xiàn)斐波那契數(shù)列的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于如何利用Python實(shí)現(xiàn)斐波那契數(shù)列的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07Python 數(shù)據(jù)可視化pyecharts的使用詳解
這篇文章主要介紹了Python 數(shù)據(jù)可視化pyecharts的使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06解決Python selenium get頁(yè)面很慢時(shí)的問(wèn)題
今天小編就為大家分享一篇解決Python selenium get頁(yè)面很慢時(shí)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01