国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

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

瀏覽:77日期:2022-07-10 15:28:45

實(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 的文件,并且在該文件中指定對(duì)外界提供的模塊列表

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

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

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

二、發(fā)布模塊

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

1、制作發(fā)布?jí)嚎s包步驟

創(chuàng)建 setup.py

from distutils.core import setupsetup(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ā)布?jí)嚎s包

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_messagetest_message.send_message.send('測試發(fā)送信息')test_message.receive_message.receive()

print(test_message.__file__)# D:pythonlibsite-packagestest_message__init__.py

3、 卸載模塊

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

三、安裝第三方模塊

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

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

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

示例:

我們下載 pygame 模塊。

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

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

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产日韩一区二区三区 | 亚洲区一区 | 久久日本精品一区二区免费 | 日本在线观看不卡 | 成人18免费 | 欧美做a欧美 | 朝鲜美女免费一级毛片 | 国产日本亚洲欧美 | 狼伊千合综网中文 | 免费中文字幕 | 中文字幕日韩在线 | 国产a网站| 国产成人十八黄网片 | 美女毛片儿 | 欧美成人性做爰 | 免费国产一区二区三区 | 午夜精品视频 | 成人精品第一区二区三区 | 狠狠88综合久久久久综合网 | 国产美女视频一区 | 精品国产香蕉在线播出 | 亚洲视频2| 自拍偷在线精品自拍偷无码专区 | 长腿嫩模打开双腿呻吟 | 夜色成人免费观看 | 久久精品国产半推半就 | 亚洲视频aaa | 国产一区二区精品在线观看 | 91精品日本久久久久久牛牛 | 国产成人啪精品午夜在线观看 | 中文字幕在线无限2021 | 在线不卡一区二区 | 欧美视频在线观看一区二区 | 欧美日韩国产亚洲一区二区三区 | 三级网站免费看 | 日韩一级欧美一级在线观看 | 男人的天堂在线观看视频不卡 | 国产精品免费观看视频 | 国产精品国产 | 99爱精品视频| 一区二区三区精品国产欧美 |