包的虚拟环境

时间:2021-05-25 18:27:38

标签: python module directory package python-venv

我正在开发一个程序并访问一组自定义模块。我将子文件夹中的模块组织为带有 __init__.py 的自己的包。此外,在目录的主级别上,我创建了一个包含我的依赖项的虚拟环境。文件夹结构如下:

project
+-- main_program.py
+-- venv
|   +-- cool_package.py
+---mypackage
|   +-- module1.py
|   +-- module2.py
|   +-- __init__.py

问题是,module2.py 取决于我在 venv 中安装的软件包。从 module2.py 运行 main_program.py 会出现错误 "cool_package.py" not found

我如何组织这样的东西,以便我可以从 main_program.py 访问 cool_package.py 以及所有其他需要的打包内容。并使用 cool_package.py 为自定义包访问 module2.py 吗?

2 个答案:

答案 0 :(得分:0)

我可能误解了您的虚拟环境是什么意思,但根据您的文件夹和文件布局,我认为您需要将 __init.py__ 文件添加到您的 venv 文件夹中以使其成为一个包,然后您应该能够到import venv.cool_package

答案 1 :(得分:0)

感谢所有答案 - 它最终通过在运行脚本之前正确激活环境来工作。第一次肯定出了点问题 - 现在一切正常,文件夹结构正确。

最好的 莫里茨