前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python3 setup.py编写详解

Python3 setup.py编写详解

作者头像
py3study
发布2020-01-06 16:49:54
3K0
发布2020-01-06 16:49:54
举报
文章被收录于专栏:python3

一、distutils工具的介绍

1. 功能

代码语言:javascript
复制
    distutils可以用来在Python环境中构建和安装额外的模块。新的模块可以是纯Python的,也可以是用C/C++写的扩展模块,或者可以是Python包,包中包含了由C和Python编写的模块

二、setuptools介绍

代码语言:javascript
复制
    setuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,它是一组Python的 distutilsde工具的增强版(适用于 Python 2.3.5 以上的版本,64 位平台则适用于 Python 2.4 以上的版本),可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况。

三、如何使用setuptools工具

代码语言:javascript
复制
setuptools的工具使用重点在于setup.py文件的编写。

1. 如何编写setup.py文件

1.1 setup.py的参数介绍

代码语言:javascript
复制
name : 打包起来的包的文件名
version : 版本号,添加为打包文件的后缀名
author : 作者
author_email : 作者的邮箱
py_modules : 罗列所有要打包的源文件
packages : 要打包的源文件的目录名
include_package_data : 项目里会有一些非py文件,比如html和js等,这时候就要靠 include_package_data 和 package_data 来指定了。
package_data:一般写成 {'your_package_name': ["files"]}, include_package_data还没完, 还需要修改MANIFEST.in文件.MANIFEST.in文件的语法为: include xxx/xxx/xxx/*.ini  */(所有以.ini结尾的文件,也可以直接指定文件名)
license : 支持的开源协议
description : 对项目简短的一个形容
ext_modules : 是一个包含Extension实例的列表,Extension的定义也有一些参数。
ext_package : 定义extension的相对路径
requires : 定义依赖哪些模块
provides : 定义可以为哪些模块提供依赖
data_files : 指定其他的一些文件(如配置文件),规定了哪些文件被安装到哪些目录中。如果目录名是相对路径,则是相对于sys.prefix或sys.exec_prefix的路径。如果没有提供模板,会被添加到MANIFEST文件中。

setup.py 编写的官方文档:https://docs.python.org/2/distutils/setupscript.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/09/18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、distutils工具的介绍
    • 1. 功能
    • 二、setuptools介绍
    • 三、如何使用setuptools工具
      • 1. 如何编写setup.py文件
        • 1.1 setup.py的参数介绍
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档