Pipenv未设置PYTHONPATH

zza*_*art 1 python pipenv

我有以下结构

.
??? module1
?   ??? __init__.py
?   ??? start.py
??? module2
?   ??? __init__.py
?   ??? settings.py
??? Pipfile
Run Code Online (Sandbox Code Playgroud)

猫模块1 / start.py

from module2.settings import VAR

if __name__ == '__main__':
    print(VAR)
Run Code Online (Sandbox Code Playgroud)

猫模块2 / settings.py

VAR = 'foo'
Run Code Online (Sandbox Code Playgroud)

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

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'
Run Code Online (Sandbox Code Playgroud)

要么

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'
Run Code Online (Sandbox Code Playgroud)

为什么pipenv无法正确设置PYTHONPATH?

zza*_*art 5

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

echo "PYTHONPATH=${PWD}" >> .env 
Run Code Online (Sandbox Code Playgroud)