将我们写的Python程序发布成包后,可以使其能够安装使用。

在项目上测试的时候,某些情况下,可以将Python打包,然后上传到测试服务器,安装测试。

setuptools是常用的打包工具。

一个简单的setup.py文件如下:

from setuptools import setup, find_packages
setup(name = "my_demo",version = "0.1",packages = find_packages()
)

其中,name是包的名字,version是版本。

给packages指定find_packages(),意为包括在本目录下的所有Python包。

什么是Python包呢?在Python 3.2及更早版本中,只有包含__init__.py文件才能识别为Python包。

那要是不想包含某些包呢?给find_packages指定exclude参数即可。

那如果我们想将数据文件也添加进来呢?有以下方法(以下:package_data:数据文件,即一些txt或者dat文件 ):

方法一

在使用版本控制的情况下(先包含全部数据文件,再指定去除):

packages = find_packages('src'),  # 包含所有src目录下的packagepackage_dir = {'':'src'},   include_package_data = True,    # 包含所有版本控制的内容# 排除所有 README.txtexclude_package_data = { '': ['README.txt'] }

方法二(直接指定包含哪些数据文件):

packages = find_packages('src'),  # 包含所有src中的包package_dir = {'':'src'},   # 告诉distutils包都在src下
package_data = {# 如果包中含有.txt文件,则包含它'': ['*.txt'],# 包含demo包data文件夹中的 *.dat文件'demo': ['data/*.dat']
}

其他的一些常用参数:

zip_safe,指定boolean选项,控制项目能否直接通过压缩文件安全安装。

install_requires:安装依赖

entry_points: 创建控制台脚本 详情

等等

可以使用命令:

python setup.py bdist_egg

来创建egg文件,egg文件可以跨平台,便于使用pip安装。

也可以使用命令:

python setup.py sdist

来创建源发布版本,此后可通过pip install来安装生成的tar.gz包

其他一些setup.py文件的参数选项:
 python setup.py build     #编译
 python setup.py install    #安装
 python setup.py sdist      #制作分发包
 python setup.py bdist_wininst    #制作windows下的分发包
 python setup.py bdist_rpm

参考:

https://setuptools.readthedocs.io/en/latest/setuptools.html

转载于:https://www.cnblogs.com/geeklove01/p/8280939.html

Python打包工具setuptools的使用相关推荐

  1. Setuptools(Python打包工具)

    目录 前言 一.安装 二.源码包介绍 2-1.源码包sdist 2-1-1.打包成源码包sdist 2-1-2.安装源码包 2-2.二进制包bdist 2-2-1.打包成源码包bdist 2-2-2. ...

  2. Python打包工具Pyintealler打包py文件为windows exe文件过程及踩坑记录+实战例子

    Python打包工具Pyintealler打包py文件为windows exe文件过程及踩坑记录+实战例子 目录 Python打包工具Pyintealler打包py文件为windows exe文件过程 ...

  3. python打包工具报错_Python打包发布神器—Pyinstaller

    一前言 在windows平台学习python的过程中,你肯定会遇到需要把.py脚本打包成.exe的情形,如此,至少有两方面的好处:第一,你的代码保密性更好,其他人不能直接看到python代码:第二,打 ...

  4. python一键打包工具setuptools

    分发工具setuptools 一般 Python 安装会自带 setuptools,如果没有可以使用 pip 安装:(注意:python2,python3都安装了,若要使用python3,需要使用pi ...

  5. python打包工具哪个好用_python打包工具比较

    前一段用python写了点小工具,希望能给同事用,这里总结一下python的打包以及构建的方法. 首先是一些需要安装依赖包的方法,这也是比较推荐的正统的方法. 1.setuptools or pip ...

  6. Python打包工具

    目前几个主要的活跃 PyInstaller,成熟,用户最多:其原理就是复制文件.支持打包成onefile的可执行文件.目录两个方式.PyArmor有对其官方适配. cx_Freezer,原理与PyIn ...

  7. Python 打包工具 pyinstaller

    介绍 官网 PyInstaller将 Python 应用程序及其所有依赖项捆绑到一个包中.用户无需安装 Python 解释器或任何模块即可运行打包的应用程序. PyInstaller支持 Python ...

  8. pythoninstaller打包_最详细的Python打包工具:Pyinstaller实战指南,如丝滑般体验!-installer文件夹...

    写了个吊炸天的Python项目,把我和左手相处的时间都赔上了.但出于版权考虑,我不太想让使用方直接用我的代码,毕竟Python代码给出去,就真的收不回来了. 想给客户演示的时候,不想那么墨迹的打开do ...

  9. 类似pyinstaller_全网首份Python打包工具Pyinstaller实战指南,如丝滑般体验

    写了个吊炸天的Python项目,把我和左手相处的时间都赔上了.但出于版权考虑,我不太想让使用方直接用我的代码,毕竟Python代码给出去,就真的收不回来了.学习Python中有不明白推荐加入交流群 号 ...

最新文章

  1. Interesting visualization tools for profiling.
  2. 问答平台元老Yahoo Answers宣布将永久关闭,网友:爷青结
  3. oracle10g重新配置crs,Oracle 10G RAC一节点系统重做后修复
  4. 1.虚拟化的历史和定义
  5. 测试Spring的“会话”范围
  6. Spring-beans-ListableBeanFactory/AutowireCapableBeanFactory/HierarchicalBeanFactory
  7. 年关将至,很多朋友想要创业的心又开始蠢蠢欲动了
  8. 基于图灵api的Python机器人
  9. 极客大学架构师训练营 微服务网关 领域驱动设计 DDD OAuth 2.0 中台架构 第20课 听课总结
  10. Oracle GoldenGate 之 Director 监控工具安装和邮箱报警
  11. 使用opencv和python进行智能图像处理pdf_OpenCV图像处理编程实例 PDF 高清版
  12. Windows API函数大全(精心总结)
  13. Google可能退出中国市场
  14. python中if满足条件后退出程序_Python的流程控制:if条件判断
  15. IE下使用VLC网页播放视频Demo
  16. 【arxiv2022】MaIL: A Unified Mask-Image-Language Trimodal Network for Referring Image Segmentation
  17. Mac 消除系统更新小红点
  18. 微信公众号网页授权40029错误「建议收藏」
  19. Java中Properties类的使用
  20. MockWebServer使用指南

热门文章

  1. 新配windows服务器及上边功能的试用体会
  2. 中间层体系结构的好处
  3. 15个最热门的GitHub库
  4. 人脸识别技术大总结(1):Face Detection Alignment
  5. ML 03、机器学习的三要素
  6. ci框架——辅助函数
  7. ObjectARX_图形数据库
  8. OpenStack Austin 峰会观察:OpenStack as IaaS 已是过去,Solutions on OpenStack 才是未来
  9. Android Studio导入github项目详解
  10. 《信息系统项目管理师软考辅导——3年真题详解与全真模拟》主要创新点、关注点...