我正在尝试从命令行而不是从IDE运行python代码。我已经从git克隆了我的项目,并制作了一个python 3虚拟环境。我已激活我的venv和类似python --version
之类的命令,正确打印了venv中的python版本(与该版本相对应,我会在venv之外运行相同的命令,这与我的情况有所不同),所以我知道使用venv对。进入激活的venv后,我使用pip pip install -r requirements.txt
从requirments.txt文件中安装了第三方软件包,但是我仍然无法运行我的代码。这是我的目录布局:
project_folder
├── env_vars
| ├── __init__.py
| └── env_vars.py
|
├── tests
| ├── __init__.py
| └── test.py
|
└── __init__.py
并且我正在尝试运行test.py,其中的导入看起来像:
import os # python built in, gets past this line no problem
from 3rd_praty_lib import 3rd_party_thing # this is a library I installed with pip, again gets past this line no problem
from env_vars import env_vars # <- this is where the failure happens. referencing my own code
所以基本上我的问题是:
在测试目录中,我使用命令python test.py
并收到此错误:
File "test.py", line 3, in <module>
from env_vars import env_vars
ModuleNotFoundError: No module named 'env_vars'
答案 0 :(得分:0)
您应该将软件包打包到python路径
import sys
sys.path.insert(0, "/path/to/your/package_or_module")