Skip to main content
 首页 » 编程设计

python之Pipenv 没有设置 PYTHONPATH

2025年05月04日21haluo1

我有以下结构

. 
├── module1 
│   ├── __init__.py 
│   └── start.py 
├── module2 
│   ├── __init__.py 
│   └── settings.py 
└── Pipfile 

cat module1/start.py

from module2.settings import VAR 
 
if __name__ == '__main__': 
    print(VAR) 

猫 module2/settings.py

VAR = 'foo' 

如果我尝试运行我的程序,我会得到

pipenv shell 
python module1/start.py 
 
Traceback (most recent call last): 
  File "module1/start.py", line 1, in <module> 
    from module2.settings import VAR 
ModuleNotFoundError: No module named 'module2' 

或

pipenv run python module1/start.py 
 
Traceback (most recent call last): 
  File "module1/start.py", line 1, in <module> 
    from module2.settings import VAR 
ModuleNotFoundError: No module named 'module2' 

为什么 pipenv 没有正确设置 PYTHONPATH?

请您参考如下方法:

我意识到我可以使用 .env 文件来设置 PYTHONPATH 并让 pipenv 使用它。

echo "PYTHONPATH=${PWD}" >> .env