首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python的Distutils模块

);编写一个setup配置文件(可选);创建一个源码发布;创建一个或多个构建(二进制)发布(可选);有些模块开发者在开发时不会考虑多个平台发布,所以就有了packagers的角色,它们从模块开发者那取得源码发布...files是要安装的文件,其中的目录信息(安装前)是相对于setup.py所在目录而言的,安装时,setup.py根据files的信息找到该文件,然后将其安装到directory中。...所以,安装者可以通过修改setup.cfg文件来覆盖setup.py中的选项;也可以通过运行setup.py时的命令行选项,来覆盖setup.cfg。...构建发布是为了方便安装者而创建的,比如对于基于RPM的Linux用户来说,它可以是二进制RPM包,而对于Windows用户来说,它可以是一个可执行的安装文件等。...bdist命令有一个--formats选项,类似于sdist命令,该选项可用于指定生成的构建发布的格式,比如命令:python setup.py bdist --format=zip 在Unix上运行该命令

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

    Python打包指南2021

    其中bdist_wheel生成的二进制包是 wheel 格式(需要安装wheel才能打包),--universal的意思是这个二进制包对所有 支持的 Python 版本和 ABI 都适用,「 一处打包,...如果你包中有 C 扩展, 也就是打包出来的 wheel 会真的有二进制文件时就不能加这个 flag 了,这时生成的文件名类似:my_package-0.1.0-cp38-cp38-win_amd64.whl...如果待安装的文件是源代码包,那么需要把这个压缩包解压到一个临时目录,根据包指定的方式编译构建,生成 whl 文件,再用 whl 安装同样的方法放到目标目录中。...注意,在 PEP 517 提案之后的今天,永远不要再用python setup.py install,python setup.py build这两种方式安装和构建包了,所有的 PyPI 上的包,都必须通过...pdm-pep517 所以我可以不用写 setup.py 了 setup.py作为一个元数据的定义格式是有问题的: 必须由 Python 运行,无法静态解析 由于第 1 点,有注入恶意代码的操作可行性

    37630

    2021年,你应该知道的Python打包指南

    其中bdist_wheel生成的二进制包是 wheel 格式(需要安装wheel才能打包),--universal的意思是这个二进制包对所有 支持的 Python 版本和 ABI 都适用,「 一处打包,...如果你包中有 C 扩展, 也就是打包出来的 wheel 会真的有二进制文件时就不能加这个 flag 了,这时生成的文件名类似:my_package-0.1.0-cp38-cp38-win_amd64.whl...现在准备安装了,如果待安装的是 whl,那就非常简单,直接解压(whl 文件是一种 zip 格式),放到目标目录即可,解压后产生的文件除了代码或二进制以外,还会包含一个my_package-0.1.0....如果待安装的文件是源代码包,那么需要把这个压缩包解压到一个临时目录,根据包指定的方式编译构建,生成 whl 文件,再用 whl 安装同样的方法放到目标目录中。...pdm-pep517 所以我可以不用写 setup.py 了 setup.py作为一个元数据的定义格式是有问题的: 必须由 Python 运行,无法静态解析 由于第 1 点,有注入恶意代码的操作可行性

    1.7K10

    什么是Python Wheels?为什么要关心它?

    从开发人员的角度来看,当您运行以下命令时,会创建一个源分发包: $ python setup.py sdist 现在尝试安装一个不同的包:chardet: $ python -m pip install...从用户的角度来看,更重要的是,当pip在PyPI上找到一个兼容的滚轮时,并不存在构建阶段。...另一个用于轮子安装的兼容性检查示例是psycopg2,它为Windows提供了大量的车轮,但没有为Linux或macOS客户端提供任何轮子。...包括:all:使规则适用于密码学及其所有依赖关系。 在我的机器上,从开始到结束大约需要32秒。不仅安装要花费很长时间,而且构建加密还需要提供OpenSSL开发头,并可用于Python。...但在这种情况下,你可以让意图显式通过要求车轮-纯二进制: 此选项仅花费4秒多一点的时间,即仅为密码学及其依赖项使用源分发版时所用时间的八分之一。

    8.6K30

    Python的Build Tools详解

    二、SetuptoolsSetuptools 是 Python 中最广泛使用的构建工具之一。它提供了一种方便的方式来打包、分发和安装 Python 项目。...要创建一个二进制包,可以使用以下命令:收起plaintextpython setup.py bdist_wheel这将创建一个 .whl 文件,这是一种用于 Python 的二进制包格式。...例如,可以创建一个自定义命令来执行特定的任务,如运行测试或生成文档。...当你创建一个新的 Poetry 项目或在现有项目中安装依赖项时,Poetry 会创建一个新的虚拟环境,并将依赖项安装到这个环境中。...五、比较和选择Setuptools、Poetry 和 Flit 都是优秀的 Python 构建工具,它们各有优缺点。在选择构建工具时,需要考虑以下因素:(一)功能需求不同的项目可能有不同的功能需求。

    1.2K20

    构建自己的Python开源包

    构建好架构后,可以开始编写单元测试代码,pytest是个简单易用的库,可以帮助我们快速完成单元测试构建。 构建安装脚本,编写 setup.py 文件 完成代码构建和测试就可以开始进入构建安装包环节。...两种安装方法都是需要编写 setup.py 文件的。 对于第一种方法我们在安装前一般还要提供安装的依赖包, 也就是requirement.txt文件。...,也就是包含__init__.py的文件夹 install_requires 需要安装的依赖包 data_files 可以用于引入一些额外的信息文件和数据,如图片、配置文件, [('文件要放入的文件夹1...',['file1',file2']),('文件要放入的文件夹2',['file3',file4'])] 第一个元素指最后在文件要放的位置/目录,如果空字符,表示放在根目录,第二个元素指原文件所在的位置...long_description 包的详细描述,后续上传到pypi,可以用于显示在主页上的描述 find_packages():这个函数会默认在和setup.py同一目录下搜索各个含有init.py的包

    1.1K20

    开发 | 在 Mac OS X 装不上 TensorFlow?看了这篇就会装

    例如: $ rm -r ~/tensorflow 使用本地 pip 安装 我们已经将 TensorFlow 二进制文件上传到了 PyPI,因此你可以通过 pip 安装, setup.py(https:...TensorFlowImage 是需要的,它用于指定 Docker 容器,你必须指定接下来的任一一个:gcr.io/tensorflow/tensorflow: TensorFlow 二进制镜像,gcr.io...none-any.whl 验证你的安装 要验证你的 TensorFlow 安装,操作以下步骤: 保证你的环境可以运行 TensorFlow 程序 运行一个小的 TensorFlow 程序 准备你的环境...如果系统输出错误信息而不是欢迎语,参考 常见安装问题。 常见安装问题 我们依据 Stack Overflow 记录 TensorFlow 安装问题和相应的解决方法。...下面的表格包括 Stack Overflow 常见的安装问题回复链接,如果你遇到的错误信息或者其它安装问题不在表格中,请在 Stack Overflow 上搜索。

    2K70

    构建自己的Python包到Pypi

    构建自己的Python包到Pypi 作者:matrix 被围观: 5 次 发布时间:2023-04-28 分类:Python | 无评论 » 安装构建工具 首先确保安装了setuptools...如果没有就运行以下命令安装: $ pip3 install setuptools wheel twine 配置项目 目录结构可参考: https://github.com/Hootrix/text-box-wrapper...wrapper.py:自己定义的文件,包含功能代码 __init__.py 包定义,以及可引入的方法 配置setup.py setup.py可配置作者、readme、仓库等信息 import os from...description="A simple package to wrap text with ASCII art", author="Ho", author_email="wdzxnwo2r...$ python3 setup.py sdist bdist_wheel 说明: 将在dist的新文件夹中生成源代码和二进制分发文件 上传到Pypi 确保已经注册了PyPI账户 $ twine upload

    55920

    python之基础篇(八)——模块与包

    __name__的值为模块名     可以在模块文件中检测自己的__name__属性,以之实现在执行时运行指定的代码,常用于模块的自我测试。...中的.exe文件       自包含的,不要求安装的预备运行可执行程序:         windows的.exe文件、Unix上带有一个小的脚本前缀的ZIP压缩文件、Mac上的.app文件等      ..."发布"是指一个文件集合,这些文件联合在一起可使用distutils构建、打包和发布模块       创建好的发布可以用于安装,也可上传到PyPI与他人共享     创建发布的步骤: 1、将各代码文件组织到模块容器中...ztar:tar.Z压缩文件             tar:tar文件         还可以在要发布的容器目录中执行"python setup.py bdist"命令进行二进制发行版打包:          ...在执行python setup.py build时python会在执行这条命令的目录下创建一个build目录。

    2.4K30

    python包安装及安装包制作

    单文件模块:直接把文件拷贝到$python_dir/lib  这是类库目录(可直接将单文件或单包放在这里) 2....多文件模块,带setup.py:python setup.py install    卸载时只能手动删除,一般安装在系统类库目录下 python setup.py install --record files.txt...记录安装后文件的路径 (卸载cat files.txt | xargs rm -rf  删除这些文件) 3.easy_install 方式 1) 下载ez_setup.py,运行python ez_setup...安装包 虽然Python的模块可以拷贝安装,但是一般情况下推荐制作一个安装包,即写一个setup.py文件来安装。....然后,运行python setup.py sdist为模块创建一个源码包 在当前目录下,会创建dist目录,里面有个文件名为foo-1.0.tar.gz,这个就是可以分发的包(如果使用命令python

    1.9K20

    在 Mac OS X 装不上 TensorFlow?看了这篇就会装

    section of setup.py 文件列出了 pip 将要安装或升级的包。...TensorFlowImage 是需要的,它用于指定 Docker 容器,你必须指定接下来的任一一个:gcr.io/tensorflow/tensorflow: TensorFlow 二进制镜像,gcr.io...none-any.whl 验证你的安装 要验证你的 TensorFlow 安装,操作以下步骤: 保证你的环境可以运行 TensorFlow 程序 运行一个小的 TensorFlow 程序 准备你的环境...如果系统输出错误信息而不是欢迎语,参考 常见安装问题。 常见安装问题 我们依据 Stack Overflow 记录 TensorFlow 安装问题和相应的解决方法。...下面的表格包括 Stack Overflow 常见的安装问题回复链接,如果你遇到的错误信息或者其它安装问题不在表格中,请在 Stack Overflow 上搜索。

    3.7K60

    HPy - 为 Python 扩展提供更优秀的 C API

    HPy 介绍 HPy 提供了一个新的 API,以用 C 扩展 Python,有零开销、更快速、方便调试、通用的二进制文件(不用任何修改,可在 CPython、PyPy、GraalPython 等解释器上直接加载...在 PyPy、GraalPython(目前比较热火的 Python3 实现,性能提升极大,但对 C 扩展) 等 CPython 替代实现上,运行更快。...更友好的调试模式:HPy 调试模式可以自动检测诸多错误。在 HPy 的调试模式下,您可以很容易地识别常见问题,如内存泄漏、对象的无效生存期、API 的无效使用等。...通用的二进制文件:为 HPy 通用 ABI 构建的扩展,可以在 CPython、PyPy、GraalPython 之上不用任何修改,直接加载运行。...setup.py 并使用此扩展实现: $ python setup.py build_ext --inplace

    60110

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    热门标签

    领券