Python模塊
上一篇文章:Python類(lèi)的定義與操作1、導(dǎo)入
下一篇文章:Python設(shè)計(jì)模式
導(dǎo)入整個(gè)模塊:import 模塊名2、Python解析器對(duì)模塊位置的搜索順序導(dǎo)入特定的函數(shù):from 模塊名 import 特定函數(shù)
使用as給函數(shù)重命名:from 模塊名 import 特定函數(shù) as 新名稱(chēng)
使用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/
提示:模塊搜索路徑存儲(chǔ)在system模塊的sys.path變量中,該變量包含當(dāng)前目錄、PYTHONPATH、安裝過(guò)程決定的默認(rèn)路徑
實(shí)例:
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__
自定義模塊:就是自己寫(xiě)一個(gè)py文件啦,別緊張,沒(méi)那么復(fù)雜__name__:通過(guò)判斷這個(gè)變量是否等于__main__,來(lái)判斷該模塊(py文件)是被別否認(rèn)模塊引用,還是自己直接調(diào)用,通過(guò)該方法可以在開(kāi)發(fā)階段進(jìn)行單個(gè)模塊測(cè)試。
實(shí)例:
MarkA.py
def funA(): print("MarkA---funA") #用來(lái)進(jìn)行測(cè)試 if __name__=="__main__": print("MarkA測(cè)試調(diào)用") funA()
MarkB.py
import MarkA as markA def funB(): print("MarkB--funB") markA.funA() if __name__=="__main__": funB()
運(yùn)行MarkB的結(jié)果:
MarkB--funB MarkA---funA4、__all__
當(dāng)該變量列表存在時(shí),只有在該列表中存在的屬性或者方法才能被引用訪(fǎng)問(wèn)
實(shí)例:
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)用會(huì)出現(xiàn)異常,因?yàn)橹挥性赺_init__中的元素才能被導(dǎo)入 b=B() b.testB() testB() """
運(yùn)行AllB.py,結(jié)果為:
A---testA testA5、包
在包含多個(gè).py文件的文件夾中,新建一個(gè)__init__.py文件,此時(shí)這個(gè)文件夾就成了包。6.模塊發(fā)布可以在這個(gè)文件中定義__all__來(lái)決定包中哪些可以被其它模塊導(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會(huì)用from import就可以完成引用使用了
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/45557.html
摘要:的模塊其實(shí)就是封裝了一個(gè)或者多個(gè)功能的代碼集合,以便于重用,模塊可以是一個(gè)文件也可以是一個(gè)目錄,目錄的形式稱(chēng)作包。已經(jīng)導(dǎo)入的模塊會(huì)保存在字典中。 Python的模塊其實(shí)就是封裝了一個(gè)或者多個(gè)功能的代碼集合,以便于重用,模塊可以是一個(gè)文件也可以是一個(gè)目錄,目錄的形式稱(chēng)作包。 模塊分類(lèi) 內(nèi)置模塊 內(nèi)置模塊可以理解成當(dāng)你安裝好python環(huán)境之后,直接可以使用import導(dǎo)入的就是內(nèi)置模塊,...
摘要:標(biāo)準(zhǔn)模塊附帶了一個(gè)標(biāo)準(zhǔn)模塊庫(kù)。它返回一個(gè)如果調(diào)用不傳遞參數(shù),則列出當(dāng)前已經(jīng)定義的所有名字用可以查看所有的內(nèi)置類(lèi)型變量函數(shù)等,方法是借助標(biāo)準(zhǔn)模塊模塊高級(jí)技巧總結(jié)的搜索路徑,順序一定要搞得清編譯后的文件內(nèi)置函數(shù)查看模塊定義的名字。 上一節(jié),我們講解了Python模塊的基礎(chǔ)知識(shí),這一節(jié)我們繼續(xù)深入了解模塊的更多知識(shí),從而讓大家全面了解、掌握和運(yùn)用模塊到我們實(shí)際的編程中。 在上一節(jié)中有一句話(huà)接...
摘要:一什么是模塊中,一個(gè)文件就稱(chēng)之為一個(gè)模塊。所有的內(nèi)置函數(shù)為避免模塊名沖突,又引入了按目錄來(lái)阻止模塊沖突的方法,稱(chēng)為包。例如下列小程序以自建的模塊,編寫(xiě)一個(gè)的模塊。如果在其他地方導(dǎo)入該模塊時(shí),判斷將失敗,即僅在此模塊單獨(dú)運(yùn)行時(shí)生效。 一、什么是模塊 Python中,一個(gè).py文件就稱(chēng)之為一個(gè)模塊。那么使用模塊有什么好處呢? (1)提高了代碼的可維護(hù)性。(2)代碼不必從零開(kāi)始,當(dāng)一個(gè)模塊...
摘要:一概念通常的程序的構(gòu)架是指將一個(gè)程序分割為源代碼文件的集合以及將這些部分連接在一起的方法。的程序構(gòu)架可表示為一個(gè)程序就是一個(gè)模塊的系統(tǒng)。它有一個(gè)頂層文件啟動(dòng)后可運(yùn)行程序以及多個(gè)模塊文件用來(lái)導(dǎo)入工具庫(kù)。導(dǎo)入是中程序結(jié)構(gòu)的重點(diǎn)所在。 一、概念 通常的Python程序的構(gòu)架是指:將一個(gè)程序分割為源代碼文件的集合以及將這些部分連接在一起的方法。 Python的程序構(gòu)架可表示為: showImg...
摘要:如果你這個(gè)腳本想要使用其它腳本里面的變量函數(shù)和類(lèi)也是可以的,在你這個(gè)腳本里面用來(lái)導(dǎo)入要引用的腳本,而那個(gè)被引用的腳本就稱(chēng)作模塊。 在此之前,我們運(yùn)行一些簡(jiǎn)短的Python代碼,都是通過(guò)Python解釋器(python或ipython)進(jìn)行的,如果我們退出解釋器再重新運(yùn)行解釋器后,上次敲進(jìn)去的變量、函數(shù)等都不見(jiàn)了,沒(méi)有保存下來(lái)。為了保存我們?cè)?jīng)寫(xiě)過(guò)的代碼,就是要寫(xiě)成.py文件,稱(chēng)為腳本。...
閱讀 5108·2021-10-13 09:39
閱讀 1996·2019-08-29 11:12
閱讀 1185·2019-08-28 18:16
閱讀 1899·2019-08-26 12:16
閱讀 1283·2019-08-26 12:13
閱讀 3024·2019-08-26 10:59
閱讀 2346·2019-08-23 18:27
閱讀 3025·2019-08-23 18:02