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函数缺省值与引用学习笔记分享
Feb 10 Python
详解TensorFlow在windows上安装与简单示例
Mar 05 Python
java中两个byte数组实现合并的示例
May 09 Python
在windows下Python打印彩色字体的方法
May 15 Python
Python 中的range(),以及列表切片方法
Jul 02 Python
对PyTorch torch.stack的实例讲解
Jul 30 Python
详解pyppeteer(python版puppeteer)基本使用
Jun 12 Python
python打开windows应用程序的实例
Jun 28 Python
Python 3 实现定义跨模块的全局变量和使用教程
Jul 07 Python
Django 使用easy_thumbnails压缩上传的图片方法
Jul 26 Python
Python对excel的基本操作方法
Feb 18 Python
python实现对doc、txt、xls等文档的读写操作
Apr 02 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
解析php通过cookies获取远程网页的指定代码
2013/06/25 PHP
php去除换行(回车换行)的三种方法
2014/03/26 PHP
php实现微信公众平台账号自定义菜单类
2014/12/02 PHP
无需数据库在线投票调查php代码
2016/07/20 PHP
php面向对象程序设计中self与static的区别分析
2019/05/21 PHP
popdiv
2006/07/14 Javascript
JavaScript打印iframe内容示例代码
2013/08/20 Javascript
用js设置下拉框为只读的小技巧
2014/04/10 Javascript
javascript去除字符串中所有标点符号和提取纯文本的正则
2014/06/07 Javascript
JavaScript中Date.toSource()方法的使用教程
2015/06/12 Javascript
JavaScript阻止回车提交表单的方法
2015/12/30 Javascript
JavaScript实现点击按钮字体放大、缩小
2016/02/29 Javascript
Three.js快速入门教程
2016/09/09 Javascript
微信小程序 rpx 尺寸单位详细介绍
2016/10/13 Javascript
Vue shopCart 组件开发详解
2018/01/26 Javascript
Vue项目从webpack3.x升级webpack4不完全指南
2019/04/28 Javascript
微信小程序--获取用户地理位置名称(无须用户授权)的方法
2019/04/29 Javascript
vue+AI智能机器人回复功能实现
2020/07/16 Javascript
python监控网卡流量并使用graphite绘图的示例
2014/04/27 Python
Python常用随机数与随机字符串方法实例
2015/04/09 Python
Python中decorator使用实例
2015/04/14 Python
python list转矩阵的实例讲解
2018/08/04 Python
Python 确定多项式拟合/回归的阶数实例
2018/12/29 Python
python读写文件write和flush的实现方式
2020/02/21 Python
python实现井字棋小游戏
2020/03/04 Python
python3 使用traceback定位异常实例
2020/03/09 Python
英国最大的邮寄种子和植物公司:Thompson & Morgan
2017/09/21 全球购物
Hotels.com日本:国外和海外住宿,酒店预订
2019/12/13 全球购物
乔迁宴答谢词
2014/01/21 职场文书
网吧消防安全制度
2014/01/28 职场文书
俄语专业毕业生求职信
2014/07/12 职场文书
致地震灾区的慰问信
2015/03/23 职场文书
城南旧事观后感
2015/06/11 职场文书
Django显示可视化图表的实践
2021/05/10 Python
整理Python中常用的conda命令操作
2021/06/15 Python
gateway与spring-boot-starter-web冲突问题的解决
2021/07/16 Java/Android