繁体   English   中英

通过pip安装后,Python模块路径不同

[英]Python module paths different after installing through pip

假设我正在一个名为mymodule的python项目中工作,并且我具有以下目录结构:

mymodule/
   README
   setup.py
   mymodule/
      __init__.py
      foo.py
      bar.py

在开发过程中,我通常会在内部mymodule文件夹中处理所有源文件。 因此,如果我正在研究foo并想从bar导入一些东西,我会做这样的事情:

from bar import myfunction

在开发过程中一切正常。 当我要部署模块时会出现问题。 如果我将模块安装到我正在处理的另一个项目中,则我的代码将不再起作用,因为模块需要像这样导入:

from mymodule.bar import myfunction

我可以将mymodule所有导入内容更改为使用此格式,但是这意味着该模块在开发中将不再起作用。 修复代码以进行部署时,我会将其破坏以进行开发,反之亦然。

我究竟做错了什么?

我不确定这是否是最干净的方法,但是我最终只是用mymodule.为所有导入添加了前缀mymodule. 如果我需要在本地进行开发,则只需运行pip install . 在根目录中。 如果进行任何更改,则需要卸载并重新安装,但至少可以正常工作。 我确定有一些PATH技巧可以阻止我执行此操作。

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM