首页
学习
活动
专区
圈层
工具
发布

Python3基础之构建setup.py

技术背景 在上一篇博客中,我们介绍了如何使用pyinstaller将python项目打包成一个可执行文件,并且放在系统目录下,让系统用户可以直接识别到我们构造的项目。...而python项目中常见的setup.py其实也是在执行类似的构建的功能,通过setup.py文件可以将python包按照指定的方案进行构建,构建出来的可执行文件是一个egg文件。...最后将这个egg文件转移到python包的统一管理路径下,这样我们就可以在系统内任一位置的python文件中调用我们构建好的这个python库。...构造setup文件 我们主要是基于setuptools来实现一个python项目的构建,以下直接展示本项目的构建方法: # setup.py import os from setuptools import...执行安装 按照上述的方法对我们的python项目进行编写后,就可以开始执行构建,如果需要测试编译可以先运行python3 setup.py build来进行测试,在安装成功后再执行install指令,当然我们也可以直接一步执行

1.2K20

python的构建工具setup.py的方法使用示例

一、构建工具setup.py的应用场景在安装python的相关模块和库时,我们一般使用“pip install 模块名”或者“python setup.py install”,前者是在线安装,会安装该包的相关依赖包...但是在如下场景下,使用python setup.py install会更适合需求:在编写相关系统时,python 如何实现连同依赖包一起打包发布?...在这种应用场景下,pip工具似乎派不上了用场,只能使用python的构建工具setup.py了,使用此构建工具可以实现上述应用场景需求,只需在 setup.py 文件中写明依赖的库和版本,然后到目标机器上使用...python setup.py install安装。...参考文献:python安装模块如何通过setup.py安装(超简单)使用setup.py安装python包和卸载python包的方法python下setuptools的安装详解及No module named

6.7K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python3基础之构建setup.py

    而setup.py就是我们这里的安装文件,在后面的章节中会着重提到。最后是我们的项目的核心路径ts,里面包含了我们的核心代码。...执行安装 按照上述的方法对我们的python项目进行编写后,无损音乐就可以开始执行构建,如果需要测试编译可以先运行python3 setup.py build来进行测试,在安装成功后再执行install.../site-packages Finished processing dependencies for ts==1.0 安装完成后,我们可以在pip的管理包目录下找到我们所构建的python包: 1 2...y Successfully uninstalled ts-1.0 总结概要 一个完善的python项目,不仅需要梳理好核心代码的软件架构,还需要定义好依赖文件、编译构建文件、API接口文档、编码规范门禁等...这里我们介绍了如何用setup.py文件来完善一个最简单的python项目,这也是每一个python开源项目所必须要具备的条件。

    87400

    Python 中的 requirements.txt 与 setup.py

    更具体地说,将讨论 requirements.txt 文件的用途以及如何使用 setuptools 来分发自定义的Python 包并让其他用户进一步使用和开发它。...除此以外还将讨论设置文件(即 setup.cfg 和 setup.py)的用途以及如何将它们与需求文件一起使用,这样可以使包开发和重新分发的过程变得更容易。...对于 numpy 包,pip 将尝试安装 1.15.0(包含)和 1.21.0(不包含)之间的最新版本。...Python 中的setuptools setuptools 是构建在 distutils 之上的包,它可以帮助开发人员快速发布 Python 包。除此以外它还提供了使依赖管理更容易的功能。...另外就是如果同时使用两者,setup.py( setup.cfg)文件应包含抽象依赖项列表,而 requirements.txt 文件必须包含具有每个包版本的特定引脚的具体依赖项(使用 = = 指定特定版本

    2.1K20

    如何卸载 python setup.py install 安装的包?

    当我们半自动安装某些 python 包时,总是存在很多依赖关系的问题,而这些问题还是很难避免的,所以,当我们安装一个不确定的包的时候,最好提前收集一些相关资料,或者请教他人,同时最好把安装过程都记录下来...## 卸载 numpy easy_install -m numpy 3. setup.py 方法 在安装前记录好安装的细节,以便日后卸载。...## 记录安装日志 # 安装 numpy python3 setup.py install --record install.log ## 卸载的时候使用日志文件 install.log cat install.log...卸载与 Pip 的包依赖项 当使用pip安装包时,它还会安装包所需的所有依赖项。不幸的是,当您卸载原始包时,pip不会卸载依赖项。这里有几个不同的过程可以用来卸载依赖项。...您可以使用pip show命令输出指定软件包的所有依赖项: 例如,输入pip show cryptography,即可看到类似'Requires: six, cffi'的依赖提示: —END—

    5.9K40

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

    编写setup.py文件,获取帮助:python setup.py --help-commands[python] Standard commands: build build...setup.py示例: from setuptools import setup setup(name='xxx',version='0.1.1') 打包命令:python setup.py sdist...选项中列出的C源文件 3)符合test/test*.py模式的文件 4)README、README.txt、setup.py和setup.cfg文件 如果需要包含更多文件,那么可以使用MANIFEST.in...www.2cto.com 4.develop:编译并且在适当的位置安装包,然后添加一个简单的链接到python site-packages文件夹中,可以使用显式的-u选项删除包,例如: python...setup.py develop python setup.py develop -u 使用该方式比其他方式安装包更好一些5.创建一个新命令:这是由setuptools引入的,是一种将包定义为插件的简单方法

    2.1K20

    使用 setup.py 将 Python 库打包分发到 PyPI 踩坑指南

    setup.py 文件简介 其实真正需要打包一个 Python 包只需要在项目根目录中提供一个 setup.py 文件即可,这个文件简单的内容如下: from setuptools import find_packages...因为 setup.py 执行打包的时候默认只会打包 Python 包,这是一个什么概念呢,就是只会打包带有 __init__.py 的目录文件,也就是必须是包,于是问题就来了,比如我的项目里面的静态文件目录...如果仅仅执行 python setup.py sdist 命令,那么你打出来的是一个 xxx.tar.gz 的包,可以理解为源文件包,当你把这个包上传到 PyPI 之后,使用 pip install 进行安装的时候会另外执行一次...也就是说,如果你在上传到 PyPI 之前就执行 python setup.py sdist bdist_wheel 打包,那么会同时得到一个 tar.gz 和一个 whl 的包,这个时候使用 pip install...我找了很多关于这个参数的描述,我感觉都没有解释清楚这个参数的作用,而我经过验证算是有个初步的理解。这个参数默认应该是 True,也就是说你不添加就默认是 True。

    2.3K20

    Python打包指南:setup.py 与 pyproject.toml 的全面对比与实战

    Python项目打包时,你是不是也纠结过:该用传统的setup.py ,还是新潮的pyproject.toml ?前者是“老江湖”,配置灵活但代码冗余;后者是“新规范”,简洁清晰却兼容性存疑。...一、核心差异:从“代码配置”到“声明式文件”,打包逻辑大不同1. setup.py :像“写脚本”,适合复杂逻辑setup.py 本质是可执行Python脚本,通过调用setuptools的setup(...缺点:不支持动态逻辑(比如无法在配置里写if-else),部分老工具(如setuptools不兼容。二、实战对比:用两种配置打包同一个项目,差距在哪里?1....复杂场景:setup.py 的“动态能力”无可替代如果你的项目需要根据环境切换配置(比如Windows和Linux依赖不同包),setup.py 的优势就体现出来了:python复制# setup.py...动态配置场景:pyproject.toml+setup.py 混合使用如果需要动态逻辑(如从文件读取版本号),可在setup.py 中导入pyproject.toml 的配置,再叠加动态内容:python

    2.4K10

    使用 PyTorch 进行音频信号处理的数据操作和转换

    因此,当您使用每晚构建的 torchaudio 时,您需要安装最新的 PyTorch。...Python conda install -c conda-forge sox # Linux python setup.py install # OSX MACOSX_DEPLOYMENT_TARGET...=10.9 CC=clang CXX=clang++ python setup.py install 或者,构建过程可以静态构建 libsox 和一些可选的编解码器,并且 torchaudio 可以通过设置环境变量来链接它们...我们不托管或分发这些数据集,不保证其质量或公平性,也不声称您拥有使用该数据集的许可。您有责任确定您是否有权根据数据集的许可使用数据集。...如果您是数据集所有者并希望更新其中的任何部分(描述、引文等),或者不希望您的数据集包含在此库中,请通过 GitHub 问题与我们联系。感谢您对 ML 社区的贡献!

    4.2K20

    setup.py即将下岗,PEP 518 说明继任者

    distutils是Python标准库的一部分,所以,使用一个可执行文件来指定distutils下的构建条件是没有问题的。...将构建工具作为Python的一部分意味着,项目维护人员如果要构建一个项目的发行版,无需担心setup.py有哪些外部依赖项。唯一的依赖项只是Python,因此没有必要指定任何依赖信息。...可是,目前还没有标准的方法,在不执行存储着依赖信息的setup.py文件的情况下,自动地了解它具体有哪些依赖项。...此解决方案有许多问题,例如: 除了setuptools本身,没有工具可以在不执行setup.py的情况下访问这些信息,但是如果不安装这些项目,setup.py将无法执行。...这也意味着用户需要了解这两种工具的发现规则,因为每个工具可能支持不同的软件包格式或以不同方式确定最新版本。

    2.4K70

    airflow 的安装部署与填坑

    Python 的包管理工具 pip 是一个非常优秀的工具,Python 相关的库都可以使用 pip 安装,airflow 也不例外。废话不多说,直接上操作步骤。...截止目前 2018年8月14日 ,airflow 最新稳定版本为1.8 ,apache-airflow 的最新稳定版本为1.9,其实都是 airflow,使用起来是一样的,只是版本本区别而已,官方指导的安装也是...airflow 1.8 使用本地时区。 airflow 1.9 使用 UTC 时区。(后面会介绍如何修改) 以 ubuntu 16.04为例,其他 linux 操作系统类似。...先在联网环境下载安装包,联网的计算机操作系统与 Python 版本最好与生产环境一致,如果不一致,需要为 pip 指定操作系统和 Python 版本。...原因是我们安装了apache-airflow[all] ,可能的原因是 hdfshook 与 Python3 不兼容,不过些错误并不影响我们使用 airflow,完全可以忽略,如果不想看到此错误,完全可以删除

    3.3K40

    深入浅出python学习

    最近开始自学python,网上找了本书《深入浅出python》 个人感觉很好,图片很多,比较生动,让人印象深刻。 昨天很快就看完了第一章,非常顺利。...构建发布和安装的时候出问题 那本书是在linux系统下运行,而我用的是windows10....折腾了老半天,得到以下结论: 构建一个发布文件: linux:python3 setup.py sdist windows:py setup.py sdist (要首先打开文件所在地;链接复制过来...—> cd 链接) 将发布安装到你的python本地副本中 linux:sudo python3 setup.py install windows:py setup.py install 另外,终端窗口就是按...本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    43990

    Python 安装包setuptools

    python包的一般安装方法     1、下载包     2、python setup.py build  #可能不需要      3、python setup.py install  Python安装包的命令有的...Setuptools是Python Distutils的加强版,使开发者构建和发布Python包更加容易,特别是当包依赖于其他包时。...用setuptools构建和发布的包与用Distutils发布的包是类似的 Distribute是对标准库disutils模块的增强,disutils主要是用来更加容易的打包和分发包,特别是对其他的包有依赖的包...Pip 是对easy_install的取代,提供了和easy_install相同的查找包的功能,因此可以使用easy_install安装的包也同样可以使用pip进行安装。...PACKAGE==0.1.2.1 # 指定包的版本,如果指定的版本高于现已安装的版本就是升级了 # easy_install -U PACKAGE       # 升级到最新版本,不指定版本就会升级到最新版本

    4.3K11

    python安装包(模块)的八种方法

    下面是 easy_install 的一些安装示例# 通过包名,从PyPI寻找最新版本,自动下载、编译、安装$ easy_install pkg_name# 通过包名从指定下载页寻找链接来安装或升级包$...使用 pipxpipx 是一个专门用于安装和管理 cli 应用程序的工具,使用它安装的 Python 包会单独安装到一个全新的独有虚拟环境。...使用 setup.py如果你有编写 setup.py 文件,可以使用如下命令直接安装# 使用源码直接安装$ python setup.py install5....使用 yumPython 包在使用 setup.py 构建的时候,对于包的发布格式有多种选项,其中有一个选项是 bdist_rpm,以这个选项发布出来的包是 rpm 的包格式。...# 发布 rpm 包$ python setup.py bdist_rpm对于 rpm 这种格式,你需要使用 yum install xxx 或者 rpm install xxx 来安装。

    1.8K20

    【python系列】手把手教你在pypi发布自己的包-他人可pip下载

    安装打包依赖工具 setuotools 和 wheel 用来构建你的项目,一般都会随 Python 安装,但是还是检查一下: python -m pip install --user --upgrade...对python的最低版本要求 ) 打包 打包前检查 通过这一步可以检查setup.py中是否有错误,例如版本号错误 python setup.py check 打包 python setup.py...请确保您正在使用 requests 的最新版本,最好是大于等于 2.21.0 版本。...检查您的 urllib3 库是否是最新版本,最好是大于等于 1.24.2 版本。...(版本号必须要改,不然上传会提示你重复了) 第三步:使用以下指令更新包体 python setup.py sdist bdist_wheel 第四步:使用以下指令把新包体上传到pypi服务器上(记得需要先把

    3.4K21

    setup.py文件是什么

    setup.py : python环境/包的构建工具 在安装python的相关模块和库时,我们一般使用“pip install 模块名”或者“python setup.py install”,前者是在线安装...但是在如下场景下,使用python setup.py install会更适合需求: 在编写相关系统时,python 如何实现连同依赖包一起打包发布?...同时将自己编写的redis_run.py模块以exe文件格式安装到python的全局执行路径~/Python27/Scripts下呢?...这时可以采用setup.py去构建环境,将自己写的模块以及相应的依赖库一起打包,用setup去完成这个任务。 所以很多github代码都提供setup.py方便我们一键安装。...怎么使用setup.py 在使用github上的FasterRCNN代码时,便要先构建环境 python setup.py build develop

    4K10

    实战教程:如何将自己的Python包发布到PyPI上

    3、setup.py文件 setup.py是setuptools的构建脚本,用来描述项目,打包的时候会用到这个文件。...确保您拥有setuptools并wheel 安装了最新版本: python3 -m pip install --user --upgrade setuptools wheel 生成这前,可以先运行python...1、准备好上面的步骤, 一个包就基本完整了, 剩下的就是打包了,可以使用下面命令打包一个源代码的包: python setup.py sdist build 这样在当前目录的dist文件夹下, 就会多出一个...tar.gz结尾的包了: 2、也可以打包一个wheels格式的包, 使用下面的命令就可以了: python setup.py bdist_wheel --universal 这样会在dist文件夹下面生成一个...whl文件. 3、或者从setup.py位于的同一目录运行此命令: python3 setup.py sdist bdist_wheel 上面的命令会在dist目录下生成一个tar.gz的源码包和一个

    4K30
    领券