使用 setuptools 在 Python 中安装 egg 文件

 更新时间:2023年08月19日 10:43:04   作者:迹忆客  
Eggs 是 Python 中以前使用的一种分发格式,它包含特定项目所需的信息,从依赖项到环境变量,在本文中,我们将讨论如何在 Python 中安装 egg 文件,以及可用于实现此操作的工具,感兴趣的朋友一起看看吧

早在 pip 时代之前,包就被存储为 .egg 文件,并通过 setuptools 组件进行安装。 但是,由于 pip 已被引入 Python,.egg 已被 wheel 文件 .whl 取代。

如果您正在使用其他软件包,则有可能与他们一起工作; 虽然它们已被弃用,但您可以解决它们并安装存储为 .egg 文件的包。

在本文中,我们将讨论如何在 Python 中安装 egg 文件,以及可用于实现此操作的工具。

使用 setuptools 在 Python 中安装 egg 文件

Eggs 是 Python 中以前使用的一种分发格式,它包含特定项目所需的信息,从依赖项到环境变量。

许多二进制格式代表 eggs,但 .egg zip 文件格式是最流行的一种,因为它对共享项目很有用,并简化了 Python 包和项目的分发。 除了 Python 代码之外,.egg 文件通常包含并使用项目范围的元数据、C 扩展和特定于包的数据。

使用 .egg 文件,您本身不需要构建或安装它; 您需要将它添加到您的 sys.path,但它可能经常需要运行时文件。 与流行的 Python 需求一样,requirements.txt 和 .egg 文件允许在其中声明库的规范。

如果您碰巧需要使用 .egg 文件并需要非 Python 数据文件,则需要安装 .egg 文件。 要安装 Python Eggs,您可以使用 easy_install。

我们将在 Windows 上的 Python 2.7 环境中进行所有操作,以使此处的所有操作都能正常工作。

要访问 easy_install,您需要安装 setuptools 包,它有助于下载、安装、管理、构建或删除 Python 包。

要安装 setuptools,我们需要从 setuptools 包页面下载 ez_setup.py。

下载 Python 文件后,将其传输到 Python27 目录,很可能是 C:\Python27。 现在,打开命令提示符,将目录更改为 C:\Python27 并设置 PYTHON_PATH。

set PYTHON_PATH=c:\Python27
set Path=C:\Python27\Scripts

现在,运行以下命令来安装 setuptools 包。

python.exe ez_setup.py

easy_install.exe 命令现已安装,可用于在 Python 2.7 环境中安装一个 egg 文件。

由于 egg 文件现在已被弃用,因此很难找到一个作为示例显示的文件,但我们仍然可以使用 setuptools 模块创建它们。

在我们的例子中,我们将创建一个名为 delftscope 的空 egg 文件。 要创建这样的文件,我们需要创建一个包含以下代码的 setup.py 文件。

from setuptools import setup, find_packages
setup(
    name = "delftscope",
    version = "0.1",
    packages = find_packages()
)

之后,我们可以运行以下 python 命令,它会在其他目录旁边创建 egg 文件。 这些目录包括 build、dist 和 delftscope.egg-info。

python setup.py bdist_egg

在 dist 目录中,您会找到名为 delftscope-0.1-py3.10.egg 的 egg 文件。

现在我们有了一个 egg 文件,让我们使用 easy_install 程序来安装它。 由于我们已经使用 set 命令将其添加到 OS 环境中,因此我们应该可以在任何地方使用 easy_install。

要在 Python 中安装 egg 文件,您可以在 PowerShell 中使用以下命令。

easy_install .\delftscope-0.1-py3.10.egg

输出:

Processing delftscope-0.1-py3.10.egg
Copying delftscope-0.1-py3.10.egg to c:\python27\lib\site-packages
Adding delftscope 0.1 to easy-install.pth file

Installed c:\python27\lib\site-packages\delftscope-0.1-py3.10.egg
Processing dependencies for delftscope==0.1
Searching for delftscope==0.1
Reading https://pypi.python.org/simple/delftscope/

这样,您就可以安装打包在 egg 文件中的模块。 但是,Python 已经转向 wheel 分发格式。

解压以在 Python 中安装 egg 文件

Egg 文件是 zip 文件; 因此,您可以解压缩此文件。 所以,如果你在 Linux 上,你可以使用 unzip 包来提取它的内容,然后使用 setup.py 安装 egg 文件中的包。

要解压 egg 文件,可以使用 unzip 命令。

unzip -l delftscope-0.1-py3.10.egg

之后,您可以访问内容并运行 python 命令来安装包。

python setup.py install

到此这篇关于在 Python 中安装 Egg 文件的文章就介绍到这了,更多相关Python 安装 Egg 文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Ubuntu18.04中Python2.7与Python3.6环境切换

    Ubuntu18.04中Python2.7与Python3.6环境切换

    这篇文章主要为大家详细介绍了Ubuntu18.04中Python2.7与Python3.6环境切换,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • 对pandas中to_dict的用法详解

    对pandas中to_dict的用法详解

    今天小编就为大家分享一篇对pandas中to_dict的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python远程控制Windows服务器的方法总结

    Python远程控制Windows服务器的方法总结

    在信息时代的洪流中,掌握一门编程语言已经成为一项必备技能,Python,这门以简洁、易学、强大著称的编程语言,更是成为无数开发者的大宝剑,今天,我们要探讨的就是如何用 Python 远程控制 Windows 服务器,需要的朋友可以参考下
    2024-07-07
  • Pytorch中torch.unsqueeze()与torch.squeeze()函数详细解析

    Pytorch中torch.unsqueeze()与torch.squeeze()函数详细解析

    torch.squeeze()这个函数主要对数据的维度进行压缩,去掉维数为1的的维度,下面这篇文章主要给大家介绍了关于Pytorch中torch.unsqueeze()与torch.squeeze()函数详细的相关资料,需要的朋友可以参考下
    2023-02-02
  • 解决Python2.7中IDLE启动没有反应的问题

    解决Python2.7中IDLE启动没有反应的问题

    今天小编就为大家分享一篇解决Python2.7中IDLE启动没有反应的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • 学习Python能用来做什么的问题

    学习Python能用来做什么的问题

    这篇文章主要介绍了关于Python能用来做什么的问题,如果你想学Python,或者你刚开始学习Python,那么你可能会问:我能用Python做什么?下面就让我们一起来看看吧
    2023-04-04
  • Python中TypeError: unhashable type: ‘list‘错误的解决方法

    Python中TypeError: unhashable type: ‘list‘错误的解

    在Python编程的领域中,数据类型的正确使用是确保程序正常运行的关键要素之一,然而,开发者们常常会遇到一些由于数据类型使用不当而引发的报错,其中TypeError: unhashable type: 'list’就是一个比较典型的错误,那么,让我们深入探究这个报错问题,为大家提供全面的解决方案
    2024-10-10
  • tkinter高级布局之PanedWindow和notebook详解

    tkinter高级布局之PanedWindow和notebook详解

    本文主要介绍了tkinter中的两种布局控件,分别是可以动态划分子控件的PanedWindow,和提供了选项卡工具的notebook,感兴趣的小伙伴可以学习一下
    2023-08-08
  • pandas 选取行和列数据的方法详解

    pandas 选取行和列数据的方法详解

    这篇文章主要介绍了pandas 选取行和列数据的方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Python Django form 组件动态从数据库取choices数据实例

    Python Django form 组件动态从数据库取choices数据实例

    这篇文章主要介绍了Python Django form 组件动态从数据库取choices数据实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05

最新评论