我正在尝试使用PYTHONPATH
将项目目录添加到pipenv
。根据{{3}}的提示,我创建了一个this post文件,以修改pipenv
管理的virtualenv使用的路径。
我创建了.env
文件(在/foo/bar/myProject
中),如下所示:
PYTHONPATH=${PYTHONPATH}:${PWD}
但是当我激活virtualenv时,这是新路径:
$ python -c "import sys; print(sys.path)"
['', '/foo/bar/${PYTHONPATH}', '/foo/bar/${PWD}', '/foo/bar/myProject',...]
它将/foo/bar/myProject
正确添加到PYTHONPATH
中。但是,看起来它还会添加两个带有未替换的环境变量的额外条目。
为什么会发生这种情况,如何避免这种情况?
注意:我正在使用Z shell(可能没关系)。
答案 0 :(得分:1)
您的外壳中可能没有设置$PYTHONPATH
变量,因此pipenv
用${PYTHONPATH}
文件中的值(即{{1 }})。然后.env
成功展开,为您提供最终值${PYTHONPATH}:${PWD}
。这导致看起来很${PWD}
很奇怪。您可以通过从值中省略PYTHONPATH=${PYTHONPATH}:${PWD}:/foo/bar/myProject
来解决此问题:
sys.path
或在运行${PYTHONPATH}
之前将其设置为某个值:
PYTHONPATH=${PWD}
经过pipenv
版本2018.11.26的测试。