Python模塊

Python模塊

上一篇文章: Python類的定義與操做
下一篇文章: Python設計模式

一、導入

導入整個模塊:import 模塊名

導入特定的函數:from 模塊名 import 特定函數python

使用as給函數重命名:from 模塊名 import 特定函數 as 新名稱shell

使用ad給模塊衝命名 import 模塊名 as 新名詞segmentfault

導入模塊的全部函數:from 模塊名 import *設計模式

二、Python解析器對模塊位置的搜索順序

1.當前目錄。

2.搜索在shell變量PYTHONPATH下的全部目錄app

3.Python默認路徑,例如UNIX下:,默認路徑通常爲:/usr/local/lib/python/函數

提示:模塊搜索路徑存儲在system模塊的sys.path變量中,該變量包含當前目錄、PYTHONPATH、安裝過程決定的默認路徑測試

實例:ui

import sys
for item in sys.path:
    print(item)

結果:spa

/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_backend

三、自定義模塊、__name__

自定義模塊:就是本身寫一個py文件啦,別緊張,沒那麼複雜

__name__:經過判斷這個變量是否等於__main__,來判斷該模塊(py文件)是被別否定模塊引用,仍是本身直接調用,經過該方法能夠在開發階段進行單個模塊測試。設計

實例:

MarkA.py

def funA():
    print("MarkA---funA")

#用來進行測試
if __name__=='__main__':
    print("MarkA測試調用")
    funA()

MarkB.py

import MarkA as markA

def funB():
    print("MarkB--funB")
    markA.funA()

if __name__=="__main__":
    funB()

運行MarkB的結果:

MarkB--funB
MarkA---funA

四、__all__

當該變量列表存在時,只有在該列表中存在的屬性或者方法才能被引用訪問

實例:

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()

'''
下面調用會出現異常,由於只有在__init__中的元素才能被導入
b=B()
b.testB()

testB()

'''

運行AllB.py,結果爲:

A---testA
testA

五、包

在包含多個.py文件的文件夾中,新建一個__ init__.py文件,此時這個文件夾就成了包。

能夠在這個文件中定義__all__來決定包中哪些能夠被其它模塊導入。

6.模塊發佈

  • 打包前項目概況:

makeA.py:

def testA():
    print("testA")

makeB.py:

def testB():
    print("testB")

setup.py:

from distutils.core import setup
#打包的詳細信息
setup(name="mark",version="1.0",description="mark's module",
      author="mark",py_modules=["makeA","makeB"])

圖片描述

  • 構建模塊
python setup.py build

構建後的目錄結構:

圖片描述

  • 生成發佈壓縮包
python setup.py sdist

執行後的目錄結構:

圖片描述

dist目錄下的mark-1.0.tar.gz就是打包後的文件

七、模塊安裝與使用

一、找到模塊安裝包

二、解壓

三、進入文件夾

四、執行:python setup.py install

也能夠指定安裝路徑:python setup.py install --prefix=安裝路徑

五、s會用from import就能夠完成引用使用了

相關文章
相關標籤/搜索