python中setuptools的作用是什么


Posted in Python onJune 19, 2020

什么是setuptools

setuptools是Python distutils增强版的集合,它可以帮助我们更简单的创建和分发Python包,尤其是拥有依赖关系的。用户在使用setuptools创建的包时,并不需要已安装setuptools,只要一个启动模块即可。

功能亮点:

  • 利用EasyInstall自动查找、下载、安装、升级依赖包
  • 创建Python Eggs
  • 包含包目录内的数据文件
  • 自动包含包目录内的所有的包,而不用在setup.py中列举
  • 自动包含包内和发布有关的所有相关文件,而不是创建一个MANIFEST.in文件
  • 自动生成经过包装的脚本或Windows执行文件
  • 支持Pyrex,即在可以setup.py中列出.pyx文件,而最终用户无需安装Pyrex
  • 支持上传到PyPI
  • 可以部署开发模式,使项目在sys.path中
  • 用新命令或setup()参数扩展distutils,为多个项目发布/重用扩展
  • 在项目setup()中简单声明entry points,创建可以自动发现扩展的应用和框架

总之,setuptools就是比distutils好用的多,基本满足大型项目的安装和发布。

基础知识点扩展:

Python打包分发工具setuptools:曾经 Python 的分发工具是 distutils,但它无法定义包之间的依赖关系。setuptools 则是它的增强版,能帮助我们更好的创建和分发 Python 包,尤其是具有复杂依赖关系的包。

其通过添加一个基本的依赖系统以及许多相关功能,弥补了该缺陷。他还提供了自动包查询程序,用来自动获取包之间的依赖关系,并完成这些包的安装,大大降低了安装各种包的难度,使之更加方便,将程序打包以后可以可以安装到自己的虚拟环境中,也可以上传到PyPI,这样非常方便大项目开发。

到此这篇关于python中setuptools的作用是什么的文章就介绍到这了,更多相关python的setuptools是什么内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python编码时应该注意的几个情况
Mar 04 Python
python中字典(Dictionary)用法实例详解
May 30 Python
Python图像灰度变换及图像数组操作
Jan 27 Python
详解Python list 与 NumPy.ndarry 切片之间的对比
Jul 24 Python
python处理Excel xlrd的简单使用
Sep 12 Python
Python编程使用*解包和itertools.product()求笛卡尔积的方法
Dec 18 Python
Django model反向关联名称的方法
Dec 15 Python
Python实现账号密码输错三次即锁定功能简单示例
Mar 29 Python
TensorFlow梯度求解tf.gradients实例
Feb 04 Python
keras-siamese用自己的数据集实现详解
Jun 10 Python
Python3.9 beta2版本发布了,看看这7个新的PEP都是什么
Jun 10 Python
Python多线程实用方法以及共享变量资源竞争问题
Apr 12 Python
python怎么判断模块安装完成
Jun 19 #Python
Keras SGD 随机梯度下降优化器参数设置方式
Jun 19 #Python
python支持多继承吗
Jun 19 #Python
python和php哪个容易学
Jun 19 #Python
基于Keras中Conv1D和Conv2D的区别说明
Jun 19 #Python
Python魔术方法专题
Jun 19 #Python
关于Theano和Tensorflow多GPU使用问题
Jun 19 #Python
You might like
这东西价格,可以买几台TECSUN S-2000
2021/03/02 无线电
PHP中ID设置自增后不连续的原因分析及解决办法
2016/08/21 PHP
JavaScript 异步调用框架 (Part 1 - 问题 & 场景)
2009/08/03 Javascript
JavaScript高级程序设计 错误处理与调试学习笔记
2011/09/10 Javascript
web的各种前端打印方法之jquery打印插件jqprint实现网页打印
2013/01/09 Javascript
解析DHTML,JavaScript,DOM,BOM以及WEB标准的描述
2013/06/19 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
2014/10/31 Javascript
JavaScript自定义数组排序方法
2015/02/12 Javascript
JavaScript组件开发完整示例
2015/12/15 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
JS获得多个同name 的input输入框的值的实现方法
2017/01/09 Javascript
Angular 输入框实现自定义验证功能
2017/02/19 Javascript
JS中的三个循环小结
2017/06/20 Javascript
Node.js的Koa实现JWT用户认证方法
2018/05/05 Javascript
解决layui前端框架 form表单,table表等内置控件不显示的问题
2018/08/19 Javascript
如何将HTML字符转换为DOM节点并动态添加到文档中详解
2018/08/19 Javascript
vee-validate vue 2.0自定义表单验证的实例
2018/08/28 Javascript
vue router-link 默认a标签去除下划线的实现
2020/11/06 Javascript
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:奇迹哥卡尔秀翻全场
2017/03/28 DOTA
python发布模块的步骤分享
2014/02/21 Python
Python中字典的基本知识初步介绍
2015/05/21 Python
pandas 读取各种格式文件的方法
2018/06/22 Python
Python3.6使用tesseract-ocr的正确方法
2018/10/17 Python
使用python将mysql数据库的数据转换为json数据的方法
2019/07/01 Python
tensorflow 变长序列存储实例
2020/01/20 Python
Python中的xlrd模块使用原理解析
2020/05/21 Python
Python 高效编程技巧分享
2020/09/10 Python
python pygame 愤怒的小鸟游戏示例代码
2021/02/25 Python
最新大学生自我评价
2013/09/24 职场文书
办公室综合文员岗位职责范本
2014/02/13 职场文书
2014年租房协议书范本
2014/10/30 职场文书
企业财务经理岗位职责
2015/04/08 职场文书
退税申请报告怎么写
2015/05/18 职场文书
学生党支部工作总结2015
2015/05/26 职场文书
2015年幼儿园中班开学寄语
2015/05/27 职场文书
Matlab求解数组中的最大值及它所在的具体位置
2021/04/16 Python