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 命令行非阻塞输入的小例子
Sep 27 Python
python调用Moxa PCOMM Lite通过串口Ymodem协议实现发送文件
Aug 15 Python
Python使用multiprocessing实现一个最简单的分布式作业调度系统
Mar 14 Python
如何使用VSCode愉快的写Python于调试配置步骤
Apr 06 Python
DataFrame:通过SparkSql将scala类转为DataFrame的方法
Jan 29 Python
python暴力解压rar加密文件过程详解
Jul 05 Python
django多对多表的创建,级联删除及手动创建第三张表
Jul 25 Python
python for循环remove同一个list过程解析
Aug 14 Python
python sqlite的Row对象操作示例
Sep 11 Python
python 引用传递和值传递详解(实参,形参)
Jun 05 Python
python中HTMLParser模块知识点总结
Jan 25 Python
Python中的套接字编程是什么?
Jun 21 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
jQuery向下滚动即时加载内容实现的瀑布流效果
2016/01/07 PHP
php生成txt文件实例代码介绍
2016/04/28 PHP
使用phpexcel类实现excel导入mysql数据库功能(实例代码)
2016/05/12 PHP
PHP实现的mysql读写分离操作示例
2018/05/22 PHP
PHP全局使用Laravel辅助函数dd
2019/12/26 PHP
style、 currentStyle、 runtimeStyle区别分析
2010/08/01 Javascript
javascript实现页面内关键词高亮显示代码
2014/04/03 Javascript
canvas 弹幕效果(实例分享)
2017/01/11 Javascript
jsonp实现百度下拉框功能的方法分析
2019/05/10 Javascript
Vue 数组和对象更新,但是页面没有刷新的解决方式
2019/11/09 Javascript
用Golang运行JavaScript的实现示例
2019/11/25 Javascript
Postman无法正常返回结果问题解决
2020/08/28 Javascript
深入理解Django的自定义过滤器
2017/10/17 Python
python实现时间o(1)的最小栈的实例代码
2018/07/23 Python
TensorFlow实现模型评估
2018/09/07 Python
Python 实现「食行生鲜」签到领积分功能
2018/09/26 Python
python3.4控制用户输入与输出的方法
2018/10/17 Python
PyTorch的Optimizer训练工具的实现
2019/08/18 Python
Python logging模块handlers用法详解
2020/08/14 Python
解决python3输入的坑——input()
2020/12/05 Python
详解CSS3+JS完美实现放大镜模式
2020/12/03 HTML / CSS
html5 分层屏幕适配的方法
2018/03/16 HTML / CSS
汇集了世界上最好的天然和有机美容产品:LoveLula
2018/02/05 全球购物
Superdry极度干燥美国官网:英国制造的服装品牌
2018/11/13 全球购物
函授本科自我鉴定
2013/11/03 职场文书
班会关于环保演讲稿
2013/12/29 职场文书
公司年会搞笑主持词
2014/03/24 职场文书
初二学习计划书范文
2014/04/27 职场文书
个人三严三实对照检查材料
2014/09/25 职场文书
小学班主任经验交流材料
2014/12/16 职场文书
实习介绍信模板
2015/01/30 职场文书
拾金不昧表扬信怎么写
2015/05/04 职场文书
《揠苗助长》教学反思
2016/02/20 职场文书
Nginx图片服务器配置之后图片访问404的问题解决
2022/03/21 Servers
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android
Win10服务全部禁用了怎么启动?Win10服务全部禁用解决方法
2022/09/23 数码科技