电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

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

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

實際開發中,一個大型的項目往往需要使用成百上千的 Python 模塊,如果將這些模塊都堆放在一起,勢必不好管理。

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

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

一、包的概念和基本使用

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

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

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

使用 ’import 包名’ 可以一次性導入包中所有的模塊。

示例:

1.新建一個 test_message 的文件夾

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

3.在 send_message 文件中定義一個 send 函數

def send(msg):print('正在發送信息:%s' % msg)

4.在 receive_message 文件中定義一個 receive 函數

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

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

# 從 當前目錄 導入 模塊列表from . import send_messagefrom . import receive_message

6.在外部直接導入 hm_message 的包

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

二、發布模塊

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

1、制作發布壓縮包步驟

創建 setup.py

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

setup函數的參數的詳細信息,可以參閱官方網站:

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

構建模塊

D:project> python setup.py build

執行完畢后,會發現目錄中多了一個 build 文件夾,里面是關于模塊的一些文件。

生成發布壓縮包

D:project> python setup.py sdist

執行完畢后,發現當前目錄下多了一個文件夾dist,里面有個壓縮文件 test_message-1.0.tar.gz。

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

2、安裝模塊

首先解壓壓縮文件,進入該文件夾。執行命令:

python setup.py install

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

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

import test_messagetest_message.send_message.send('測試發送信息')test_message.receive_message.receive()

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

3、 卸載模塊

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

三、安裝第三方模塊

第三方模塊通常是指由知名的第三方團隊開發的,并且被程序員廣泛使用的 Python 包 / 模塊。

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

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

示例:

我們下載 pygame 模塊。

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

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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 减速机三参数组合探头|TSM803|壁挂式氧化锆分析仪探头-安徽鹏宸电气有限公司 | 档案密集柜_手动密集柜_智能密集柜_内蒙古档案密集柜-盛隆柜业内蒙古密集柜直销中心 | 深圳市超时尚职业培训学校,培训:月嫂,育婴,养老,家政;化妆,美容,美发,美甲. | 三轴曲线机-端子插拔力试验机|华杰仪器| 100_150_200_250_300_350_400公斤压力空气压缩机-舰艇航天配套厂家 | 上海三信|ph计|酸度计|电导率仪-艾科仪器 | 杭州代理记账费用-公司注销需要多久-公司变更监事_杭州福道财务管理咨询有限公司 | 干洗加盟网-洗衣店品牌排行-干洗设备价格-干洗连锁加盟指南 | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | 网站建设-高端品牌网站设计制作一站式定制_杭州APP/微信小程序开发运营-鼎易科技 | 除甲醛公司-甲醛检测-广西雅居环境科技有限公司 | 宝宝药浴-产后药浴-药浴加盟-艾裕-专注母婴调养泡浴 | 联系我们-腾龙公司上分客服微信19116098882 | 课件导航网_ppt课件_课件模板_课件下载_最新课件资源分享发布平台 | 武汉印刷厂-不干胶标签印刷厂-武汉不干胶印刷-武汉标签印刷厂-武汉标签制作 - 善进特种标签印刷厂 | 凝胶成像仪,化学发光凝胶成像系统,凝胶成像分析系统-上海培清科技有限公司 | 皮带输送机-大倾角皮带输送机-皮带输送机厂家-河南坤威机械 | CTP磁天平|小电容测量仪|阴阳极极化_双液系沸点测定仪|dsj电渗实验装置-南京桑力电子设备厂 | 水质传感器_水质监测站_雨量监测站_水文监测站-山东水境传感科技有限公司 | 超声波分散机-均质机-萃取仪-超声波涂料分散设备-杭州精浩 | 论文查重_免费论文查重_知网学术不端论文查重检测系统入口_论文查重软件 | 橡胶电子拉力机-塑料-微电脑电子拉力试验机厂家-江苏天源 | 大鼠骨髓内皮祖细胞-小鼠神经元-无锡欣润生物科技有限公司 | 悬浮拼装地板_篮球场木地板翻新_运动木地板价格-上海越禾运动地板厂家 | 大立教育官网-一级建造师培训-二级建造师培训-造价工程师-安全工程师-监理工程师考试培训 | 两头忙,井下装载机,伸缩臂装载机,30装载机/铲车,50装载机/铲车厂家_价格-莱州巨浪机械有限公司 | PSI渗透压仪,TPS酸度计,美国CHAI PCR仪,渗透压仪厂家_价格,微生物快速检测仪-华泰和合(北京)商贸有限公司 | 诺冠气动元件,诺冠电磁阀,海隆防爆阀,norgren气缸-山东锦隆自动化科技有限公司 | 细砂提取机,隔膜板框泥浆污泥压滤机,螺旋洗砂机设备,轮式洗砂机械,机制砂,圆锥颚式反击式破碎机,振动筛,滚筒筛,喂料机- 上海重睿环保设备有限公司 | PE一体化污水处理设备_地埋式生活污水净化槽定制厂家-岩康塑业 | 桂林腻子粉_内墙外墙抗裂砂浆腻子粉推荐广西鑫达涂料厂家供应 | 小型单室真空包装机,食品单室真空包装机-百科 | 净化车间_洁净厂房_净化公司_净化厂房_无尘室工程_洁净工程装修|改造|施工-深圳净化公司 | 花纹铝板,合金铝卷板,阴极铝板-济南恒诚铝业有限公司 | 房屋质量检测-厂房抗震鉴定-玻璃幕墙检测-房屋安全鉴定机构 | 空压机商城|空气压缩机|空压机配件-压缩机网旗下商城 | 防腐储罐_塑料储罐_PE储罐厂家_淄博富邦滚塑防腐设备科技有限公司 | 上海网站建设-上海网站制作-上海网站设计-上海做网站公司-咏熠软件 | 上海噪音治理公司-专业隔音降噪公司-中广通环保 | 深圳公司注册-工商注册公司-千百顺代理记账公司 | 莱州网络公司|莱州网站建设|莱州网站优化|莱州阿里巴巴-莱州唯佳网络科技有限公司 |