我按照 here 的说明安装了 pipenv。我在 Windows 命令提示符下运行
pip install --user pipenv
回了消息
Successfully installed pipenv-5.3.3
现在我想使用pipenv安装
requests
包,所以我跑了
pipenv install requests
但这又回来了
'pipenv' is not recognized as an internal or external command,
operable program or batch file.
我添加了路径
C:\Users\Robert\AppData\Roaming\Python\Python35\site-packages
到我的 Windows 路径环境变量,但我仍然收到相同的错误。 如何使用 pipenv 安装
requests
包?
编辑:由于我的系统上有 Python 3.5 和 Python 3.6 的残余,我将卸载所有内容并重新开始。 (我刚刚开始学习 Python,我希望尽可能简单。)
我有类似的设置并面临类似的问题,但我找到的解决方案相当简单。我所有的 PATH 变量都已经正确了(从 Python 3 开始,Windows Installer 会自动完成所有这些)。
问题实际上是由于冲突安装virtualenv。
要解决此问题,您只需运行以下命令:
首先,删除您当前版本的 virtualenv:
pip uninstall virtualenv
然后,删除当前版本的 pipenv:
pip uninstall pipenv
当您被问到
Proceed (y/n)?
时,只需输入y
。这会给你一个干净的石板。
最后,您可以再次安装 pipenv 及其依赖项:
pip install pipenv
这还将安装最新版本的virtualenv。
只需在命令提示符中输入
pipenv --version
,您应该会看到所需的输出。
我知道这听起来很平凡,但它实际上是 Windows 系统的解决方案。您不需要修改任何系统环境变量(请不要将站点包添加到您的环境变量)。
python -m pipenv
可能对您有用,(或 python3 -m pipenv
或 py 3 -m pipenv
)这是告诉 python 运行模块 pipenv
而不是有时安装不正确的终端快捷方式。
只是为了表明当我安装
pipenv
并运行which pipenv
时它们是等价的它指向一个像/Library/Frameworks/Python.framework/Versions/3.6/bin/pipenv
这样的文件,它看起来像这样:
#!/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6
# -*- coding: utf-8 -*-
import re
import sys
from pipenv import cli
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(cli())
因此它从可执行文件名称中删除
.pyw
或 .exe
然后调用 pipenv.cli.cli()
。很可能你的机器上有这样的文件它只是没有将python的/bin
文件夹添加到你的系统PATH
所以它不可访问,如果发生这种情况但没有人安装python时通常会有警告检查那些。 :P
使用
pipenv.__main__
时运行的模块python -m pipenv
如下所示:
from .cli import cli
if __name__ == '__main__':
cli()
这叫
pipenv.cli.cli()
。所以这个主模块绝对做同样有效的事情。
为了解决这个问题,我需要以管理员身份启动我的 CMD。
pip 卸载 pipenv
pip 安装 pipenv
要测试这个新配置,你可以写 pipenv --version
使用 python -m pipenv 而不仅仅是 pipenv,它应该可以工作。祝你好运。
尝试将以下内容添加到 Path 环境变量中:
C:\Users\Robert\AppData\Roaming\Python\Python36\Scripts
而不是
\site-package
,因为这是安装pipenv.exe的地方(至少对我而言)。
使用这个命令解决我的问题:
python -m pipenv install django==2.1
非常感谢@Srivats Shankar。如果您尝试了他所说的但没有用,希望您不要忘记检查您的 python 路径?如果您安装了多个 python 版本,执行
pip uninstall virtualenv
或 pip uninstall pipenv
可能无助于解决问题。
每个
python version
通常都应该安装自己的pip
。在这种情况下你会做的是:
`-python -version_to_uninstall_virtualenv_from -m pip uninstall virtualenv; py --version -m pip uninstall virtualenv
-python -version_to_uninstall_pipenv_from -m pip uninstall pipenv; py --version -m pip uninstall pipenv`
然后使用类似的命令安装
pipenv
:
`-python -version_to_install_pipenv_on -m pip install pipenv; py --version -m pip uninstall pipenv`
我有一个像你 sed 一样的错误,我刚刚重新安装了 pipenv 并修复了它。 我使用了这个命令:
pip install pipenv
代替
C:\Users\Robert\AppData\Roaming\Python\Python35\site-packages
应该是
C:\Users\Robert\AppData\Roaming\Python\Python36\Scripts
之后,尝试关闭和重新打开终端
安装 pipenv 后检查警告。有时 pipenv 位置未在环境变量中注册。
我注意到安装了多个 python 版本的几种不同情况。
首选解决方案是使用:
python -m pip install pipenv
此命令用于 Python3.7 实例生成可执行文件
C:\Users\XXX\AppData\Local\Programs\Python\Python37\Scripts
它使设置其他包更容易。
你应该使用
python -m pip install pipenv
然后
python -m pipenv install django
Windows 没有正式支持,我想。
请通过在命令提示符中运行以下命令来检查您的系统中是否安装了 pipenv:
pipenv --version
如果返回错误,请重新安装并在您的系统中设置环境变量路径