python打包和发布(setuptools)

原创博客不易,如若转载请注明来源。
如有错误及问题,欢迎评论指出。一起学习

文章目录

  • python打包和发布(setuptools)
    • 简介
    • 打包
    • 发布
  • 参考文档

    • Python项目打包和发布
    • 将python包发布到PyPI和制作whl文件

简介

通常我们开发一个Python开源项目,想在多台服务器上部署,或者贡献项目为其他开发者来使用,最好的方式是发布到PyPI(Python包管理平台) ,之后可以通过pip install package方式安装包,下面将介绍最基本的Python项目打包和发布的方法,其实目前有很多方法,您还可以通过访问官方打包文档来深入理解: PyPI打包和分发文档。

用来Python环境中构建和安装额外的模块,模块可以基于Python,也可以C/C++写的扩展模块,可以是python包,包中包含了C和Python编写的模块。setuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,它是一组Python的 distutilsde工具的增强版(适用于 Python 2.3.5 以上的版本,64 位平台则适用于 Python 2.4 以上的版本),可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况。

打包

使用setuptools打包重点在于setup.py文件编写。

这里贴出我的目录结构:

我的setup.py文件:

from setuptools import setupsetup(name='Pokit',version='0.1.0',description='python toolkit',url='https://github.com/hu-jinwen/Pokit',author='hu-jinwen',author_email='hu-jinwen@outlook.com',license='MIT',keywords='python toolkit utils',packages=['pokit.utils', 'pokit.tools'],install_requires=['pycrypto==2.6.1'],python_requires='>=3'
)

下面是对参数的一些解释:

加粗的表示必要、或者最好加上的

arg info
name 为项目名称,和顶层目录名称一致。打包起来的包的文件名
version 版本号,为打包文件的后缀名
description 对项目的简短描述
url 项目的地址,比如我的就放在github上
author 项目作者
author_email 作者邮箱
license 遵守的开源协议
keywords 项目的关键字、标签
packages 包含项目中的哪些包(希望项目中哪些包打包时打入)
data_files 打包时将哪些文件包括进去,例如:data_files=[ (“resources”, [“:/Transfer”]) ],
install_requires 该项目依赖哪些第三方包,
python_requires 该项目依赖的python版本

使用命令打包:

python setup.py bdist_wheel

发布

python打包和发布(setuptools),whl包相关推荐

  1. Python打包分发工具setuptools简介

    Python打包分发工具setuptools 通过这个工具,可以打包安装插件,并且还可以发布到PyPI上面,具体参考: 1.http://python.jobbole.com/87240/ 2.htt ...

  2. vue-cli3封装组件库打包并发布npm开源包和npm内网私有库

    ① 使用Vue-cli3搭建项目 vue create demo vue-cli3官方文档 注:cli3 提供一个可选的 vue.config.js 配置文件.如果这个文件存在则他会被自动加载,所有的 ...

  3. Setuptools(Python打包工具)

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

  4. 如何制作并使用python发布的模块压缩包和whl包,并进行pip安装和使用教程,加上传Pypi,上传之后又如何增删whl项目

    如何制作并使用python发布的模块压缩包和whl包,并进行pip安装和使用教程 0 对于python中包概念的理解 一 创建setup.py文件 # 打包成模块压缩包 from distutils. ...

  5. python 打包egg_将Python程序打包到egg或WHL安装包或exe包中,把,python,成,或者,whl

    目的: 把个人开发的公共包制作成whl 然后放入pip私有源中,局域网内使用 步骤: 1.安装setuptools 首先安装setuptools工具:pip install setuptools 或更 ...

  6. python离线安装pip.whl_20180903 - Python Pip 工具下载whl包与离线安装

    20180903 - Python Pip 工具下载whl包与离线安装 1. 我的Blog 2. 简介信息 摘要:Linux下,python,pip工具离线安装包 Author: andy_yhm@y ...

  7. python基础知识专题 - 模块的打包和发布

    分发Python模块 jcLee95 的 CSDN 博客 邮箱 :291148484@163.com CSDN 主页:https://blog.csdn.net/qq_28550263?spm=100 ...

  8. python打包分发工具:setuptools

    你是否也想写一个python库,想向社会开源或者企业内部使用,想让别人通过简单的命令pip install 安装你的库.那么setuptools绝对是最好用的python打包与分发工具. setupt ...

  9. Python打包工具setuptools的使用

    将我们写的Python程序发布成包后,可以使其能够安装使用. 在项目上测试的时候,某些情况下,可以将Python打包,然后上传到测试服务器,安装测试. setuptools是常用的打包工具. 一个简单 ...

最新文章

  1. Web漏洞扫描(二:Windows server2008 R2操作系统(部署dvwa))
  2. 用C#计算1000以内含1的数字
  3. The Future Of the Software Development
  4. 无为职业学校计算机班,致盐亭职中2000级计算机三班全体同学的一封信
  5. 远程过程调用RPC RMI(Remote Method Invocation)和Web Service
  6. Win10 安装 Linux 子系统
  7. 专访Nick McKeown:网络领域的游戏颠覆者
  8. 51单片机学习7-最小系统protel原理图的绘制
  9. ssm教务排课系统MVC学校专业选修课程安排选课信息jsp源代码数据库mysql
  10. macd ema java源码_MACD指标源码汇总,成功率极高,买卖点提前一目了然!
  11. 外贸独立站平台十大排名-找到最合适的外贸平台
  12. 关于STM32PWM占空比的总结
  13. 小程序neverland test
  14. html5清新文艺,清新文艺的短句
  15. Java开发-应届生面试常常涉及到的问题
  16. Lens5 指南:专为Kubernetes人员设计的IDE
  17. 小票打印机ESC/POS命令集
  18. 阿里云短信服务使用介绍
  19. 人工蜂群算法(ABC算法)
  20. oracle修改open_cursors,oracle的open_cursors问题探究

热门文章

  1. 路由器回流--内网不能访问网站的问题
  2. Android 避免主线程执行网络请求之Activity/Fragment 结束后处理异步回调
  3. vue双向绑定失效赋值失效
  4. 计算机毕业设计安卓理发店预约系统源码
  5. 谱聚类算法原理及实现
  6. 高私密性的消息通讯系统 Vuvuzela
  7. Xcode 报错 xcrun: error: active developer path(/Applications/Xcode.app/Contents/...does not exist问题解决。
  8. 电力英语和计算机考试难吗,四六级、计算机这些证书真的影响进电网吗?
  9. Android面试题之Service篇
  10. 微型计算机接口及控制技术,微型计算机及接口技术