最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python引入多個(gè)模塊及包的概念過程解析

 更新時(shí)間:2020年09月21日 10:21:19   作者:小名叫小明  
這篇文章主要介紹了Python引入多個(gè)模塊及包的概念過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

實(shí)際開發(fā)中,一個(gè)大型的項(xiàng)目往往需要使用成百上千的 Python 模塊,如果將這些模塊都堆放在一起,勢必不好管理。

而且,使用模塊可以有效避免變量名或函數(shù)名重名引發(fā)的沖突,但是如果模塊名重復(fù)怎么辦呢?

因此,Python提出了包(Package)的概念。

一、包的概念和基本使用

什么是包呢?簡單理解,包就是文件夾,只不過在該文件夾下必須存在一個(gè)名為“__init__.py” 的文件。

每個(gè)包的目錄下都必須建立一個(gè) __init__.py 的模塊,可以是一個(gè)空模塊,可以寫一些初始化代碼,其作用就是告訴 Python 要將該目錄當(dāng)成包來處理。

包名的命名方式和變量名一致,'小寫字母' + '_' 。

使用 'import 包名' 可以一次性導(dǎo)入包中所有的模塊。

示例:

1.新建一個(gè) test_message 的文件夾

2.在目錄下,新建兩個(gè)文件 send_message.py 和 receive_message.py

3.在 send_message 文件中定義一個(gè) send 函數(shù)

def send(msg):
print("正在發(fā)送信息:%s" % msg)

4.在 receive_message 文件中定義一個(gè) receive 函數(shù)

def receive():
print("正在接收信息......")

5.在 test_message 文件夾下新建一個(gè) __init__.py 的文件,并且在該文件中指定對外界提供的模塊列表

# 從 當(dāng)前目錄 導(dǎo)入 模塊列表
from . import send_message
from . import receive_message

6.在外部直接導(dǎo)入 hm_message 的包

import test_message
test_message.send_message.send("測試發(fā)送信息")
test_message.receive_message.receive()
#正在發(fā)送信息:測試發(fā)送信息
#正在接收信息......

二、發(fā)布模塊

如果希望自己開發(fā)的模塊,分享給其他人,可以按照以下步驟操作。

1、制作發(fā)布壓縮包步驟

創(chuàng)建 setup.py

from distutils.core import setup
setup(name="test_message", # 包名
   version="1.0", # 版本
   description="發(fā)送和接收消息模塊", # 描述信息
   long_description="完整的發(fā)送和接收消息模塊", # 完整描述信息
   author="小名叫小明", # 作者
   author_email="328122186@qq.com", # 作者郵箱
   url="nothing", # 主頁
   py_modules=["hm_message.send_message",

setup函數(shù)的參數(shù)的詳細(xì)信息,可以參閱官方網(wǎng)站:

https://docs.python.org/2/distutils/apiref.html

構(gòu)建模塊

D:\project> python setup.py build

執(zhí)行完畢后,會(huì)發(fā)現(xiàn)目錄中多了一個(gè) build 文件夾,里面是關(guān)于模塊的一些文件。

生成發(fā)布壓縮包

D:\project> python setup.py sdist

執(zhí)行完畢后,發(fā)現(xiàn)當(dāng)前目錄下多了一個(gè)文件夾dist,里面有個(gè)壓縮文件 test_message-1.0.tar.gz。

這里要注意:要制作哪個(gè)版本的模塊,就使用哪個(gè)版本的解釋器執(zhí)行!

2、安裝模塊

首先解壓壓縮文件,進(jìn)入該文件夾。
執(zhí)行命令:

python setup.py install

安裝好,我們就可以測試下是否能夠正常使用包。

記得把原來的包刪了,把下載解壓的包也刪了。這樣才能測試出,這個(gè)包是安裝在系統(tǒng)目錄里了,而不是開發(fā)目錄里。

import test_message
test_message.send_message.send("測試發(fā)送信息")
test_message.receive_message.receive()

print(test_message.__file__)
# D:\python\lib\site-packages\test_message\__init__.py

3、 卸載模塊

根據(jù) 包.__file__ 得到的信息,直接從安裝目錄下,把安裝模塊的目錄刪除就可以。

三、安裝第三方模塊

第三方模塊通常是指由知名的第三方團(tuán)隊(duì)開發(fā)的,并且被程序員廣泛使用的 Python 包 / 模塊。

在安裝第三方模塊的時(shí)候,我們一般使用 pip 工具。

pip 是一個(gè)現(xiàn)代的,通用的 Python 包管理工具,提供了對 Python 包的查找、下載、安裝、卸載等功能。

示例:

我們下載 pygame 模塊。

pygame 是一套非常成熟的游戲開發(fā)模塊。

# 安裝
pip install pygame
# 卸載
pip uninstall pygame

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python入門學(xué)習(xí)之字符串與比較運(yùn)算符

    Python入門學(xué)習(xí)之字符串與比較運(yùn)算符

    這篇文章主要介紹了Python入門學(xué)習(xí)之字符串與比較運(yùn)算符,是Python語法中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-10-10
  • 徹底理解Python中的yield關(guān)鍵字

    徹底理解Python中的yield關(guān)鍵字

    今天小編就為大家分享一篇關(guān)于徹底理解Python中的yield關(guān)鍵字,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • Python unittest單元測試框架實(shí)現(xiàn)參數(shù)化

    Python unittest單元測試框架實(shí)現(xiàn)參數(shù)化

    這篇文章主要介紹了Python unittest單元測試框架實(shí)現(xiàn)參數(shù)化,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Python字符串中的單詞反轉(zhuǎn)的實(shí)現(xiàn)示例

    Python字符串中的單詞反轉(zhuǎn)的實(shí)現(xiàn)示例

    在Python中,要將字符串中的單詞進(jìn)行反轉(zhuǎn),本文主要介紹了Python字符串中的單詞反轉(zhuǎn)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-04-04
  • python讀取目錄下最新的文件夾方法

    python讀取目錄下最新的文件夾方法

    今天小編就為大家分享一篇python讀取目錄下最新的文件夾方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • python中如何讓輸出不換行

    python中如何讓輸出不換行

    這篇文章主要介紹了python中如何讓輸出不換行問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 如何安裝并使用conda指令管理python環(huán)境

    如何安裝并使用conda指令管理python環(huán)境

    這篇文章主要介紹了如何使用conda指令管理python環(huán)境,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • python+html文字點(diǎn)選驗(yàn)證碼加固安全防線

    python+html文字點(diǎn)選驗(yàn)證碼加固安全防線

    這篇文章主要為大家介紹了python文字點(diǎn)選驗(yàn)證碼加固安全防線實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Python實(shí)現(xiàn)計(jì)算圓周率π的值到任意位的方法示例

    Python實(shí)現(xiàn)計(jì)算圓周率π的值到任意位的方法示例

    這篇文章主要介紹了Python實(shí)現(xiàn)計(jì)算圓周率π的值到任意位的方法,簡單分析了圓周率的計(jì)算原理,并結(jié)合實(shí)例形式分析了Python計(jì)算圓周率的相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • 提高M(jìn)atplotlib繪圖清晰度的幾種方法

    提高M(jìn)atplotlib繪圖清晰度的幾種方法

    使用python中的matplotlib.pyplot繪圖的時(shí)候,如果將圖片顯示出來,或者另存為圖片,常常會(huì)出現(xiàn)清晰度不夠的問題,當(dāng)然這種問題是對于png或者jpg這種格式的圖片而言的,所以本文給大家介紹了提高M(jìn)atplotlib繪圖清晰度的幾種方法,需要的朋友可以參考下
    2024-01-01

最新評論

新巴尔虎左旗| 玉田县| 沙河市| 遵义市| 三原县| 张家界市| 嘉兴市| 万安县| 来宾市| 景洪市| 临夏县| 荣昌县| 茶陵县| 浙江省| 河曲县| 安塞县| 会同县| 枝江市| 珲春市| 含山县| 社会| 资兴市| 浦县| 呼玛县| 土默特右旗| 瓦房店市| 延庆县| 牡丹江市| 葵青区| 安化县| 平阳县| 水城县| 泰来县| 筠连县| 辽源市| 泌阳县| 古田县| 绥德县| 刚察县| 泰和县| 宜州市|