Python模塊
上一篇文章:Python類的定義與操作1、導(dǎo)入
下一篇文章:Python設(shè)計模式
導(dǎo)入整個模塊:import 模塊名2、Python解析器對模塊位置的搜索順序導(dǎo)入特定的函數(shù):from 模塊名 import 特定函數(shù)
使用as給函數(shù)重命名:from 模塊名 import 特定函數(shù) as 新名稱
使用ad給模塊沖命名 import 模塊名 as 新名詞
導(dǎo)入模塊的所有函數(shù):from 模塊名 import *
1.當(dāng)前目錄。2.搜索在shell變量PYTHONPATH下的所有目錄
3.Python默認(rèn)路徑,例如UNIX下:,默認(rèn)路徑一般為:/usr/local/lib/python/
提示:模塊搜索路徑存儲在system模塊的sys.path變量中,該變量包含當(dāng)前目錄、PYTHONPATH、安裝過程決定的默認(rèn)路徑
實例:
import sys for item in sys.path: print(item)
結(jié)果:
/Users/zhaolixiang/Desktop/python/test1/模塊 /Users/zhaolixiang/Desktop/python/test1 /Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7 /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages /Applications/PyCharm.app/Contents/helpers/pycharm_matplotlib_backend3、自定義模塊、__name__
自定義模塊:就是自己寫一個py文件啦,別緊張,沒那么復(fù)雜__name__:通過判斷這個變量是否等于__main__,來判斷該模塊(py文件)是被別否認(rèn)模塊引用,還是自己直接調(diào)用,通過該方法可以在開發(fā)階段進(jìn)行單個模塊測試。
實例:
MarkA.py
def funA(): print("MarkA---funA") #用來進(jìn)行測試 if __name__=="__main__": print("MarkA測試調(diào)用") funA()
MarkB.py
import MarkA as markA def funB(): print("MarkB--funB") markA.funA() if __name__=="__main__": funB()
運行MarkB的結(jié)果:
MarkB--funB MarkA---funA4、__all__
當(dāng)該變量列表存在時,只有在該列表中存在的屬性或者方法才能被引用訪問
實例:
AllA.py
__all__=["A","testA"] __all__=["A","testA"] class A: def testA(self): print("A---testA") class B: def testB(self): print("B---testB") def testA(): print("testA") def testB(): print("testB")
AllB.py
from AllA import * a=A() a.testA() testA() """ 下面調(diào)用會出現(xiàn)異常,因為只有在__init__中的元素才能被導(dǎo)入 b=B() b.testB() testB() """
運行AllB.py,結(jié)果為:
A---testA testA5、包
在包含多個.py文件的文件夾中,新建一個__init__.py文件,此時這個文件夾就成了包。6.模塊發(fā)布可以在這個文件中定義__all__來決定包中哪些可以被其它模塊導(dǎo)入。
makeA.py:
def testA(): print("testA")
makeB.py:
def testB(): print("testB")
setup.py:
from distutils.core import setup #打包的詳細(xì)信息 setup(name="mark",version="1.0",description="mark"s module", author="mark",py_modules=["makeA","makeB"])
python setup.py build
構(gòu)建后的目錄結(jié)構(gòu):
python setup.py sdist
執(zhí)行后的目錄結(jié)構(gòu):
dist目錄下的mark-1.0.tar.gz就是打包后的文件
7、模塊安裝與使用1、找到模塊安裝包2、解壓
3、進(jìn)入文件夾
4、執(zhí)行:python setup.py install
也可以指定安裝路徑:python setup.py install --prefix=安裝路徑
5、s會用from import就可以完成引用使用了
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/45557.html
摘要:的模塊其實就是封裝了一個或者多個功能的代碼集合,以便于重用,模塊可以是一個文件也可以是一個目錄,目錄的形式稱作包。已經(jīng)導(dǎo)入的模塊會保存在字典中。 Python的模塊其實就是封裝了一個或者多個功能的代碼集合,以便于重用,模塊可以是一個文件也可以是一個目錄,目錄的形式稱作包。 模塊分類 內(nèi)置模塊 內(nèi)置模塊可以理解成當(dāng)你安裝好python環(huán)境之后,直接可以使用import導(dǎo)入的就是內(nèi)置模塊,...
摘要:標(biāo)準(zhǔn)模塊附帶了一個標(biāo)準(zhǔn)模塊庫。它返回一個如果調(diào)用不傳遞參數(shù),則列出當(dāng)前已經(jīng)定義的所有名字用可以查看所有的內(nèi)置類型變量函數(shù)等,方法是借助標(biāo)準(zhǔn)模塊模塊高級技巧總結(jié)的搜索路徑,順序一定要搞得清編譯后的文件內(nèi)置函數(shù)查看模塊定義的名字。 上一節(jié),我們講解了Python模塊的基礎(chǔ)知識,這一節(jié)我們繼續(xù)深入了解模塊的更多知識,從而讓大家全面了解、掌握和運用模塊到我們實際的編程中。 在上一節(jié)中有一句話接...
摘要:一什么是模塊中,一個文件就稱之為一個模塊。所有的內(nèi)置函數(shù)為避免模塊名沖突,又引入了按目錄來阻止模塊沖突的方法,稱為包。例如下列小程序以自建的模塊,編寫一個的模塊。如果在其他地方導(dǎo)入該模塊時,判斷將失敗,即僅在此模塊單獨運行時生效。 一、什么是模塊 Python中,一個.py文件就稱之為一個模塊。那么使用模塊有什么好處呢? (1)提高了代碼的可維護(hù)性。(2)代碼不必從零開始,當(dāng)一個模塊...
摘要:一概念通常的程序的構(gòu)架是指將一個程序分割為源代碼文件的集合以及將這些部分連接在一起的方法。的程序構(gòu)架可表示為一個程序就是一個模塊的系統(tǒng)。它有一個頂層文件啟動后可運行程序以及多個模塊文件用來導(dǎo)入工具庫。導(dǎo)入是中程序結(jié)構(gòu)的重點所在。 一、概念 通常的Python程序的構(gòu)架是指:將一個程序分割為源代碼文件的集合以及將這些部分連接在一起的方法。 Python的程序構(gòu)架可表示為: showImg...
摘要:如果你這個腳本想要使用其它腳本里面的變量函數(shù)和類也是可以的,在你這個腳本里面用來導(dǎo)入要引用的腳本,而那個被引用的腳本就稱作模塊。 在此之前,我們運行一些簡短的Python代碼,都是通過Python解釋器(python或ipython)進(jìn)行的,如果我們退出解釋器再重新運行解釋器后,上次敲進(jìn)去的變量、函數(shù)等都不見了,沒有保存下來。為了保存我們曾經(jīng)寫過的代碼,就是要寫成.py文件,稱為腳本。...
閱讀 5291·2021-10-13 09:39
閱讀 2044·2019-08-29 11:12
閱讀 1211·2019-08-28 18:16
閱讀 1932·2019-08-26 12:16
閱讀 1316·2019-08-26 12:13
閱讀 3056·2019-08-26 10:59
閱讀 2397·2019-08-23 18:27
閱讀 3065·2019-08-23 18:02