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

为什么用` `pip -e .`安装的包不需要__init__.py?

使用pip -e .安装的包不需要__init__.py的原因是因为pip -e .命令是用于安装可编辑模式的包,也称为开发模式安装。在这种安装方式下,包会被链接到当前工作目录中,而不是被复制到Python的site-packages目录中。

在Python中,__init__.py文件是用于标识一个目录为一个包的标志文件。它通常为空文件,但它的存在告诉Python解释器该目录是一个包,并且可以被导入和使用。

然而,在可编辑模式下,包不会被复制到site-packages目录中,而是直接链接到当前工作目录中。因此,不需要__init__.py文件来标识包的存在,Python解释器可以直接访问包的代码。

可编辑模式的安装对于开发过程中的调试和测试非常有用。它允许开发人员在安装的包的源代码上进行更改,并立即看到更改的效果,而无需重新安装包。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云容器服务(TKE)。

  • 腾讯云云服务器(CVM):提供弹性、可靠、安全的云服务器,适用于各种应用场景。详情请参考:腾讯云云服务器
  • 腾讯云容器服务(TKE):基于Kubernetes的容器管理服务,提供高可用、弹性伸缩的容器集群。详情请参考:腾讯云容器服务
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 构建一个pip安装的车辆路径显示的Python包

    简单实现了基本需求后,想着能不能封装下,弄成个python包的形式,这样可以在其他地方使用pip安装,在程序里import调用,也显得简洁。 基本效果 ?...封装为python包并上传 制作python包稍微有点麻烦,之前做了个简陋的脚手架工具帮助我创建一些基本的文件,省得再动手了。...使用pip install mwrz安装该工具,然后在工作目录下执行命令行fastpypi --packagename=carpathview产生一个myNewPackage的文件夹,里面有个名为carpathview...的包及一些基本文件。...然后修改setup.py文件,首先这次不需要产生命令行脚本,注释掉scripts所在行,然后由于我们的程序使用了2.9版本的jinja2,在install_requires行添加依赖库,改为install_requires

    1.2K100

    Python 通过命令行安装包的时候 pip 提示错误

    安装的提示后提示错误为: The term 'pip' is not recognized as the name of a cmdlet 具体的提示信息如上图所示。...原因和方案 出现上面的问题的原因大部分情况是因为在 Python 安装的时候没有将 Python 的 Path 添加到环境变量中去。...通常这个文件是位于 Python 安装路径下有一个 Scripts 的文件夹。...例如,如果使用默认的安装路径,那在我的计算机上的文件安装路径为: C:\Users\yhu\AppData\Local\Programs\Python\Python39\Scripts 将上面的路径添加到你的...当完成上面的设置后再重启命令行工具,再输入 pip 应该不会提示有问题了。 因为 VSCode 使用的是 PS 的控制台,所以应该不需要进行修改也可以使用了。

    1.3K30

    pip安装的包pycharm识别不了_手机上的python安装第三方库

    问题描述: 在cmd控制台 pip install pytest 后并显示安装成功后, 并且尝试用pycharm 的python 中import pytest ,显示异常,提示我未安装过pytest...解决方法 方法一:在PyCharm下载第三方库(即把之前下的库作废,这里重新再下一次……) 方法二:坚持用pip的方法安装第三方库 方法1: 无需命令,通过pycharm操作即可,找到“pytest...”点击“install”安装即可(由于我已经安装) 方法2: 我们可以查找这个:project interpreter(项目解释器) 选择当前环境下是否有你安装的第三方库,打开后发现,没有之前安装...因为我在终端下安装python3.8的时候,路径是“/usr/local/bin/python3.8”下的,所以要想办法,改对应的引入位置 将这个python解释器应用所有项目中 此时,之前终端下安装的第三方库出现安装过的.../3.8/lib/python3.8/site-packages进入此文件夹下,你会看到你使用pip已经安装过的第三方库 解决方法是参考一篇大神的博客,这里我也根据自己的情况整理分享 关于pip安装第三方库

    98520

    Python学习笔记(五)·模块

    方法是选择一个顶层包名,比如mycompany,按照如下目录存放: mycompany ├─ __init__.py ├─ abc.py └─ xyz.py 引入了包以后,只要顶层的包名不与别人冲突,那所有模块都不会与别人冲突...请注意,每一个包目录下面都会有一个__init__.py的文件,这个文件是必须存在的,否则,Python 就把这个目录当成普通目录,而不是一个包。...__init__.py可以是空文件,也可以有 Python 代码,因为__init__.py本身就是一个模块,而它的模块名就是mycompany。 类似的,可以有多级目录,组成多级层次的包结构。...private 函数细节,这也是一种非常有用的代码封装和抽象的方法,即: 外部不需要引用的函数全部定义成 private,只有外部需要引用的函数才定义为 public。...5.2 安装第三方模块 在 Python 中,安装第三方模块,是通过包管理工具 pip 完成的。

    94330

    用 WiX 制作安装包:为 WiX 制作的 exe 安装包添加 .NET Framework 前置的安装步骤

    本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。 前面我们制作完成了一个简单的 exe 安装包。...小提示 Bundle(exe 格式)的判断方法和 Product(msi 格式)的不一样,因此 为 WiX 制作的 msi 安装包添加 .NET Framework 环境检查 一文中所编写的代码对本文没有任何影响...做两件事情: 将 .NET Framework 的安装加入到捆绑包的安装过程中; 将 .NET Framework 的安装包文件嵌入到捆绑包中或随包放到单独的文件中(可选)。...将 .NET Framework 的安装包文件嵌入到捆绑包中 如果你在前一个步骤中选择的是通过 Web 的方式来安装 .NET Framework,那么此步骤就不需要了。...根据 WiX 3 已开源的源码我们可以得知,本地安装 .NET Framework 时选取的目录为 redist\。

    85910

    用 WiX 制作安装包:为 WiX 制作的 msi 安装包添加 .NET Framework 环境检查

    本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。 前面我们制作完成了一个简单的 msi 安装包。...本文基于前一篇文章已经建好的项目继续: 用 WiX 制作安装包:创建一个简单的 msi 安装包 添加 WixNetFxExtension 引用 在 msi 安装包项目的“Reference”上右键,“添加引用...小提示 MSI 包只能判断 .NET Framework 是否存在,无法在不存在时执行 .NET Framework 的安装操作。...: 此 MSI 包安装需要满足指定条件 中间的判断条件我们用了 为避免出错要求强制加上此包裹,有的团队为了提升可读性建议如无必要则不要加上包裹。你也可以定义你的团队规范。 Installed 属性表示当前此产品是否已安装。

    1.2K30

    统计学习方法 Python 库

    除了这里提到的还有很多。有关详细信息,请参阅 打包和分发项目。 生成分发档案 下一步是为 包 生成分发包。这些是上传到包索引的档案,可以通过 pip 安装。...python3 -m pip install --upgrade setuptools wheel # 在虚拟环境不需要 --user 小提示 如果您在安装它们时遇到问题,请参阅 安装包 教程。...pypi 安装新上传的软件包 pip install slmethod Collecting slmethod Downloading https://files.pythonhosted.org/...由于 TestPyPI 与实时 PyPI 没有相同的包,因此尝试安装依赖项可能会失败或安装意外的事情。虽然我们的示例包没有任何依赖关系,但在使用 TestPyPI 时避免安装依赖项是一种很好的做法。...您可以通过导入模块并引用先前 name 放置的属性来测试它是否已正确安装 __init__.py。

    1K30

    python第三十七课——模块

    ; 例如:random、os、os.path、math、... 2).第三方模块:别人写的有价值的代码(面向全世界),我们如果需要使用, 只需要通过pip安装即可 3).自定义模块:在项目开发过程中...自定义模块: 需要先显示的导入自定义模块到当前模块中,然后就可以随意的使用其中的内容 代码if __name__ == __main__:此代码的作用是将不想被加载的代码定义其中 "包"的概念:...package 创建一个python package,就是创建一个python的包, 包的作用:将多个有关联的模块纳入其中,方便之后的维护和管理 对于__init__.py和__pycache__...目录,我们不需要关注它,但是不要删除它 第三方模块: 打开cmd --> 输入pip -V(此操作查看是否安装完成pip) 涉及的主要操作如下: 1).查看当前安装的所有第三方模块:pip list...2).查看某个第三方模块的详细信息:pip show 模块名 3).安装某个第三方模块:pip install 模块名例如:pip install redis 4).删除某个第三方模块:pip

    25030
    领券