python设计自定义栈类_Python如何自定义模块?Python基础教程,第十讲,自定义模块...
學(xué)完此次課程,我能做什么?
通過(guò)此次課程,我們將學(xué)會(huì)如何自定義自己的模塊和包,以及如何引用到自己的項(xiàng)目中,從而實(shí)現(xiàn)代碼的復(fù)用。
學(xué)習(xí)此次課程,需要多久?
5-10分鐘
課程內(nèi)容
什么是Python的標(biāo)準(zhǔn)庫(kù)?
Python在標(biāo)準(zhǔn)安裝中,還帶了一組模塊他們就是標(biāo)準(zhǔn)庫(kù)。簡(jiǎn)單地說(shuō)就是系統(tǒng)自帶了一些方便我們使用的方法,他們統(tǒng)稱(chēng)為標(biāo)準(zhǔn)庫(kù)。
Python如何自定義模塊?
自定義模塊與當(dāng)前代碼同目錄
自定義模塊hello.py 與 1.py同一目錄
hello 模塊中 定義了一個(gè)模塊方法
使用模塊:
此種方法優(yōu)點(diǎn):不需要額外的配置,在同目錄下,直接和使用內(nèi)部模塊一樣 導(dǎo)入即可使用。
缺點(diǎn)很明顯:模塊存在的意義在提高代碼的復(fù)用性,使多個(gè)程序可以共享代碼,如果每個(gè)模塊都要單獨(dú)放在相應(yīng)的程序下,與出發(fā)點(diǎn)有點(diǎn)背道而馳,所以不建議大家使用此方法,了解一下即可。
在Python代碼中指定模塊位置
首先在/home/dely/github/python/library2目錄下定義一個(gè)模塊run.py
在下面的Demo中使用run 模塊中的 hi函數(shù)
此方法優(yōu)點(diǎn):公共模塊可以同一管理,無(wú)需放在項(xiàng)目所在目錄下,提高的復(fù)用性。
缺點(diǎn)是:引用前,需制定模塊所在位置。
通過(guò)環(huán)境變量指定,python模塊所在位置
上圖中,我已經(jīng)把PYTHONPATH添加到環(huán)境變量中,如何制定環(huán)境變量不在這里說(shuō)了,大家根據(jù)自己系統(tǒng)版本去谷歌或者百度吧。
配置好環(huán)境變量后,在library目錄下寫(xiě)一個(gè)fly模塊
在下面的Demo中使用fly模塊的 hi 函數(shù)
優(yōu)點(diǎn):代碼復(fù)用,無(wú)需在代碼中制定模塊路徑,無(wú)多余代碼,和使用標(biāo)準(zhǔn)庫(kù)一樣
缺點(diǎn):移植性差,不同的電腦需要配置環(huán)境變量
以上三種常用方法,大家可以按照自己的需求使用。
考慮一個(gè)問(wèn)題?
按照上面的方法,管理一個(gè)小的項(xiàng)目完全沒(méi)有問(wèn)題,但是有沒(méi)有考慮一下,如果我們有1000個(gè)不同功能的模塊,怎么辦?全部放在一個(gè)文件夾?
答案肯定是NO.
我們這個(gè)時(shí)候就需要使用包,來(lái)管理我們的模塊。
為了演示方便,我直接放在和項(xiàng)目同目錄下,先看一下目錄結(jié)構(gòu):
eat 和 say 模塊都只有一個(gè)hi方法。
重點(diǎn)要注意的圖上已經(jīng)標(biāo)明了。
import 導(dǎo)入的包,必須使用包.模塊名.方法名 使用
from..import 方式導(dǎo)入的包,可以直接使用模塊名.方法名 使用
小結(jié)
本次課程我們主要學(xué)習(xí)如何自定義模塊,自定義包,以及如何導(dǎo)入自定義的包。使用過(guò)程中還會(huì)有一些坑,大家在練習(xí)的時(shí)候,踩踩看吧。
接下來(lái)學(xué)習(xí)什么?
下一課,我們講學(xué)習(xí)常見(jiàn)的Python內(nèi)置模塊。只有熟悉了常用的模塊和方法,我們?cè)谧鲰?xiàng)目的時(shí)候才能游刃有余,靈活使用。
關(guān)注公眾號(hào),回復(fù) Python基礎(chǔ) 下載全部代碼+PDF版電子書(shū)
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的python设计自定义栈类_Python如何自定义模块?Python基础教程,第十讲,自定义模块...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 领克03被撞报废车主仅轻伤 获沃尔沃“同
- 下一篇: python中sn的意思_python获