python中如何打包用户自定义模块


Posted in Python onSeptember 23, 2020

假设需要打包的模块文件名为my.py,打包模块需要新建的一个脚本setip.py,然后在脚本下输入如下的内容:

from disutils.core import setup
setup{name = 'my',version = '1.0',py_modules = ['my']}

以管理员身份运行cmd,进入my.py的目录,执行下面的命令即可打包:

python setup.py sdist

运行后在该目录下方出现一个文件夹dist,进入这个文件夹,会出现一个my-1.0.zip文件。
将该压缩包放在sys.path的目录下,解压,以管理员身份运行cmd,进入解压的目录,执行下方的命令即可自动安装my模块。

python setup.py install

完成安装后,即可加载my模块:

import my

知识点扩展:

自定义模块

自定义模块(也就是私人订制),我们要自定义模块,首先就要知道什么是模块

一个函数封装一个功能,比如现在有一个软件,不可能将所有程序都写入一个文件,所以咱们应该分文件,组织结构要好,代码不冗余,所以要分文件,但是分文件,分了5个文件,每个文件里面可能都有相同的功能(函数),怎么办?所以将这些相同的功能封装到一个文件中.

模块就是文件,存放一堆函数,谁用谁拿。怎么拿?

模块是一系列常用功能的集合体,一个py文件就是一个模块

为什么要使用模块?

1、从文件级别组织程序,更方便管理

随着程序的发展,功能越来越多,为了方便管理,我们通常将程序分成一个个的文件,这样做程序的结构更清晰,方便管理。这时我们不仅仅可以把这些文件当做脚本去执行,还可以把他们当做模块来导入到其他的模块中,实现了功能的重复利用

2、拿来主义,提升开发效率

同样的原理,我们也可以下载别人写好的模块然后导入到自己的项目中使用,这种拿来主义,可以极大地提升我们的开发效率,避免重复造轮子。

ps:

如果你退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过python meet.py方式去执行,此时meet.py被称为脚本script。

'''
-*- coding: utf-8 -*-
@Author : Meet
@Software: PyCharm
@File  : meet.py
'''
print('from the meet.py')

name = 'guoboayuan'

def read1():
  print('meet模块:',name)

def read2():
  print('meet模块')
  read1()

def change():
  global name
  name = 'meet'

到此这篇关于python中如何打包用户自定义模块的文章就介绍到这了,更多相关python打包用户自定义模块方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python使用random和tertools模块解一些经典概率问题
Jan 28 Python
python中文件变化监控示例(watchdog)
Oct 16 Python
Flask框架踩坑之ajax跨域请求实现
Feb 22 Python
python创建子类的方法分析
Nov 28 Python
pytorch 实现cross entropy损失函数计算方式
Jan 02 Python
服务器端jupyter notebook映射到本地浏览器的操作
Apr 14 Python
pandas中read_csv、rolling、expanding用法详解
Apr 21 Python
python seaborn heatmap可视化相关性矩阵实例
Jun 03 Python
python集合能干吗
Jul 19 Python
python爬虫scrapy基本使用超详细教程
Feb 20 Python
Python selenium的这三种等待方式一定要会!
Jun 10 Python
Python Pandas pandas.read_sql_query函数实例用法分析
Jun 21 Python
python使用matplotlib绘制折线图的示例代码
Sep 22 #Python
python利用paramiko实现交换机巡检的示例
Sep 22 #Python
python批量修改交换机密码的示例
Sep 22 #Python
python爬虫构建代理ip池抓取数据库的示例代码
Sep 22 #Python
scrapy中如何设置应用cookies的方法(3种)
Sep 22 #Python
Python浮点型(float)运算结果不正确的解决方案
Sep 22 #Python
如何使用PyCharm引入需要使用的包的方法
Sep 22 #Python
You might like
php flush类输出缓冲剖析
2008/10/19 PHP
php $_ENV为空的原因分析
2009/06/01 PHP
PHP stristr() 函数(不区分大小写的字符串查找)
2010/06/03 PHP
Zend的MVC机制使用分析(一)
2013/05/02 PHP
php实现的用户查询类实例
2015/06/18 PHP
XHTML-Strict 内允许出现的标签
2006/12/11 Javascript
google jQuery 引用文件,jQuery 引用地址集合(jquery 1.2.6至jquery1.5.2)
2011/04/24 Javascript
仿新浪微博登陆邮箱提示效果的js代码
2013/08/02 Javascript
jquery中的过滤操作详细解析
2013/12/02 Javascript
javascript弹出页面回传值的方法
2015/01/28 Javascript
谈谈Jquery中的children find 的区别有哪些
2015/10/19 Javascript
JavaScript获取浏览器信息的方法
2015/11/20 Javascript
jQuery 实现评论等级好评差评特效
2016/05/06 Javascript
AngularJS基础 ng-cut 指令介绍及简单示例
2016/08/01 Javascript
Bootstrap轮播图学习使用
2017/02/10 Javascript
尝试自己动手用react来写一个分页组件(小结)
2018/02/09 Javascript
JavaScript获取用户所在城市及地理位置
2018/04/21 Javascript
微信小程序实现指定显示行数多余文字去掉用省略号代替
2018/07/25 Javascript
使用angular-cli webpack创建多个包的方法
2018/10/16 Javascript
简单了解vue 插值表达式Mustache
2020/07/22 Javascript
[04:03]DOTA2英雄梦之声_第02期_风暴之灵
2014/06/30 DOTA
简单谈谈Python流程控制语句
2016/12/04 Python
Python 记录日志的灵活性和可配置性介绍
2018/02/27 Python
pygame实现俄罗斯方块游戏(对战篇1)
2019/10/29 Python
pytorch 模型的train模式与eval模式实例
2020/02/20 Python
Python发送邮件实现基础解析
2020/08/14 Python
Pat McGrath Labs官网:世界上最有影响力的化妆师推出的彩妆品牌
2018/01/07 全球购物
Nice Kicks网上商店:ShopNiceKicks.com
2018/12/25 全球购物
上海中网科技笔试题
2012/02/19 面试题
CSMA/CD介质访问控制协议
2015/11/17 面试题
毕业自我鉴定总结
2014/03/24 职场文书
2014年党员自我评议总结
2014/09/23 职场文书
中小学生学籍证明
2014/10/25 职场文书
导游欢迎词范文
2015/01/23 职场文书
英语辞职信怎么写
2015/02/28 职场文书
python index() 与 rindex() 方法的使用示例详解
2022/12/24 Python