python的setup.py文件及其常用命令

2023-10-26

http://www.2cto.com/kf/201209/153517.html

编写setup.py文件,获取帮助:python setup.py --help-commands

[python] 
Standard commands: 
  build             build everything needed to install 
  build_py          "build" pure Python modules (copy to build directory) 
  build_ext         build C/C++ extensions (compile/link to build directory) 
  build_clib        build C/C++ libraries used by Python extensions 
  build_scripts     "build" scripts (copy and fixup #! line) 
  clean             clean up temporary files from 'build' command 
  install           install everything from build directory 
  install_lib       install all Python modules (extensions and pure Python) 
  install_headers   install C/C++ header files 
  install_scripts   install scripts (Python or otherwise) 
  install_data      install data files 
  sdist             create a source distribution (tarball, zip file, etc.) 
  register          register the distribution with the Python package index 
  bdist             create a built (binary) distribution 
  bdist_dumb        create a "dumb" built distribution 
  bdist_rpm         create an RPM distribution 
  bdist_wininst     create an executable installer for MS Windows 
  upload            upload binary package to PyPI 
  check             perform some checks on the package 
 
Extra commands: 
  rotate            delete older distributions, keeping N newest files 
  develop           install package in 'development mode' 
  setopt            set an option in setup.cfg or another config file 
  saveopts          save supplied options to setup.cfg or other config file 
  egg_info          create a distribution's .egg-info directory 
  install_egg_info  Install an .egg-info directory for the package 
  alias             define a shortcut to invoke one or more commands 
  easy_install      Find/get/install Python packages 
  bdist_egg         create an "egg" distribution 
  test              run unit tests after in-place build 

 

standard commands(标准命令)是distutils内建命令,而Extra commands(附加命令)是像

setuptools这样的第三方包创建的。

命令详解:
1.sdist:用来创建一个源码包,在windows下为zip格式,linux下为tag.gz格式 。
setup.py示例:
from setuptools import setup
setup(name='xxx',version='0.1.1')
打包命令:python setup.py sdist
distutils将浏览包的路径,查找包含在档案中的文件,包括:
   1)所有py_modules、packages和scripts选项隐含的python源文件
   2)所有在ext_modules选项中列出的C源文件
   3)符合test/test*.py模式的文件
   4)README、README.txt、setup.py和setup.cfg文件


如果需要包含更多文件,那么可以使用MANIFEST.in文件模版,示例如下:
include xx.txt
include yy/xx.txt
....
2.bdist_egg:用来创建一个二进制分发版本,经常用来替代基于bdist生成的模式


3.install:安装包到python中。另外,他还可能会安装在setup.py中的install_requires定义的

相关模块,例如:

   install_requires=['...','...']

删除一个包:1)删除这个包所创建的文件,2)删除在site-packages文件夹easy-install.pth文

件中列举的所有引用。 www.2cto.com


4.develop:编译并且在适当的位置安装包,然后添加一个简单的链接到python site-packages文

件夹中,可以使用显式的-u选项删除包,例如:
 python setup.py develop
 python setup.py develop -u
    使用该方式比其他方式安装包更好一些

 

5.创建一个新命令:这是由setuptools引入的,是一种将包定义为插件的简单方法,示例:
...entry_points='''
                [distutils.commands]
  my_command=my.command.module.Class


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python的setup.py文件及其常用命令 的相关文章

随机推荐

  • 爬虫实战1-批量获取公开政策文本

    本文未展示图片 可以跳转到我的博客园浏览代码和操作流程 博客园 艽野尘梦 目标 爬取北京市公开发布的所有人才引进相关的政策文本 准备 1 环境 Python 3 7 2 使用 selenium 库中的 webdriver 3 安装对应版本的
  • MAVEN 私有仓库搭建与配置

    一 nexus 下载安装 1 下载 官网地址 https www sonatype com nexus repository oss 由于XXX原因 官网地址可能无法下载 百度网盘 百度网盘 请输入提取码 提取码 ogjf 2 安装 lin
  • docker部署lnmp环境介绍

    lnmp 一 部署lnmp 二 测试nginx和php连接 三 测试php和mysql的连接 一 部署lnmp 1 网络规划 172 16 10 0 24 nginx 172 16 10 10 mysql 172 16 10 20 php
  • C++到底还能做什么?

    嗯 这是一位朋友发到我邮箱里面的 很奇怪 发到了gmail邮箱 而不是我常用的hotmail邮箱哈 我呢 试着回答一下 如果回答得不好 叫做肖某人学艺不精 回去重新学习再来过哈 呵呵 一家之言哈 欢迎拍装 原文如下 肖老师您好 我现在是一名
  • AngularJS 通过事件实现跨作用域传值

    跨作用域传值 跨作用域传值 可以通过 子作用域共同使用父作用域的变量或者使用 单例的service实现 这两种方式 在父级作用域或者 Service 单例的变量值改变的时候 无法实现把值再自动处理赋值给作用域 但是通过事件链 的方式就可以实
  • 页表项长度的计算方法

    Frame Number It gives the frame number in which the current page you are looking for is present The number of bits requi
  • 信息安全概念

    1 信息安全定义 国际标准化组织 lntemational Organization for Standardization IS0 息安全的定义为 为数据处理系统建立和采取技术 管理的安全保护 保护计算机硬件 软件 数据不因偶然的或恶意的
  • 创建一个报表服务器项目,创建报表服务器项目

    创建报表服务器项目 10 17 2017 本文内容 Azure DevOps Server 2020 Azure DevOps Server 2019 TFS 2018 TFS 2013 Azure DevOps Server 以前名为 V
  • 电影下载地址大集合,只要是电影就能找到

    看到很多人都想找一些奇葩 或者国内很少见的电影 你们还在百度 微盘上搜索么 还在人人影视上溜达么 以下收集各大电影网站 绝对能满足你们 如果你不是那么热爱电影 只是闲暇之余看看热门的新片 美剧 不求画质与速度的话 那么下面这几个网站已经能满
  • VB

    文章目录 变量定义 Sub过程 函数定义 控制台输入输出 switch case语句 IF语句 FOR循环语句 不等于 逻辑运算符 控制台输入回车不崩溃函数 获取外部库指针内容放到自定义类中 读ini文件 变量定义 int Dim 变量名
  • 深度学习学习率的调整

    20220626 0 引言 最近在做实验的时候 由于结果一直都不怎么好 我就在想是不是过拟合了 那就算不是过拟合 是不是根本没有学习到数据集中的信息呢 想到了这些事情 我就直接把测试集的效果跟随着训练过程直接打印出来了 当然 实际过程中 肯
  • 1.Linux命令-删除

    Linux的删除命令 在Linux下删除文件 我们使用rm命令 还有搭配相应的参数 具体的选择我们看下面看说明 rm 参数 文件名 参数说明 1 f force 忽略不存在的文件 强制删除 无任何提示 2 i interactive 进行交
  • windows下qtmqtt模块的编译安装-Qt5.12.12

    windows下qtmqtt模块的编译安装 Qt5 12 12 代码获取及编译环境 代码获取 方式1 方式2 配置编译环境 编译安装 代码获取及编译环境 代码获取 方式1 直接git拉取至本地 git clone https github
  • PyTorch显存机制简要分析

    显存开销 显存占用约为element个数的4倍 注意不会将空闲的显存释放 模型参数 模型参数的梯度 优化器状态 跟踪每个权重参数 比如记录动量 中间结果 前向传播时计算的中间结果 显存分析方法 No Nvidia smi PyTorch中即
  • 《JavaScript设计模式》初次笔记——wsdchong

    JavaScript设计模式 初次笔记 前言 设计模式一直久仰大名 但是没有去花时间去了解 于是今天特意花时间去看 JavaScript设计模式 2013年6月出版 和w3cschool上的设计模式 然后做了一些笔记 以 JavaScrip
  • 随机游走序列平稳吗_【问答】时间序列系列(一)—— 平稳序列

    编写 果壳屋 什么是平稳 非平稳序列 如果时间的变化不会导致分布的变化 我们谈论的是分布统计属性 如均值 方差和协方差 我们就把时间序列称为为平稳的 stationary 这并不意味着序列不会随时间而变化 只是它的变化方式本身不会随时间而变
  • mybatis实现继承映射

    ORM 框架的优势在于能让我们利用面向对象的思维去操作数据库 hibernate 作为重量级的 ORM 框架对面向对象的支持很强大 作为半自动化的 mybatis 对面向对象的支持也是很完备的 这篇文章就来讨论一下如何利用 mybatis
  • Vue的路由

    一 Vue的路由 1 路由 路由 从源页面到目的页面的决策过程 2 前端路由 前端路由 在前端页面中维护的路由规则 1 hash 在地址中以 分隔页面 2 history 在地址中以 分隔页面 3 VueRouter路由 VueRouter
  • 今天来聊一聊在人工智能技术发展中起到重要作用的蒸馏算法

    人工智能技术的迅猛发展已经带来了诸多突破和应用 但同时也面临着一些挑战 例如深层网络的复杂性和高计算成本 为了应对这些问题 蒸馏算法作为一种有效的知识传递方法被提出并广泛应用于人工智能领域 本文将深入探讨蒸馏算法的原理 关键技术以及其在人工
  • python的setup.py文件及其常用命令

    http www 2cto com kf 201209 153517 html 编写setup py文件 获取帮助 python setup py help commands python Standard commands build b