我试着用pipenv。我运行命令pip install pipenv,运行成功:

...
Successfully built pipenv pathlib shutilwhich pythonz-bd virtualenv-clone
Installing collected packages: virtualenv, pathlib, shutilwhich, backports.shutil-get-terminal-size, pythonz-bd, virtualenv-clone, pew, first, six, click, pip-tools, certifi, chardet, idna, urllib3, requests, pipenv
...

但是,当我在一个新的根项目目录中运行命令pipenv install时,我收到以下消息:-bash: pipenv: command not found。我怀疑我可能需要修改我的.bashrc,但我不清楚该向文件中添加什么,或者修改是否有必要。


当前回答

在安装pipenv (sudo pip install pipenv)后,当试图运行pipenv shell命令时,我一直得到“Command Not Found”错误。

我最终用以下代码修复了它:

pip3 install pipenv
pipenv shell

其他回答

我在Mac OS X 10.13 High Seirra上有同样的pipenv问题,另一个Mac工作得很好。我使用Heroku来部署我的Django服务器,一些在2.7版本,一些在3.6版本。所以我需要2.7和3.6。当HomeBrew安装Python时,它会将Python指向原始2.7,python3指向3.6。

问题可能是由于$ pip install pipenv。我检查了/usr/local/bin, pipenv不在那里。所以,我尝试了完全卸载:

$ pip uninstall pipenv

Cannot uninstall requirement pipenv, not installed
You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

$ pip3 uninstall pipenv
Skipping pipenv as it is not installed.

然后重新安装和工作现在:

$ pip3 install pipenv
Collecting pipenv

在这种情况下,您只需要将二进制路径添加到bash中。如果你正在使用ZSH,例如,你需要编辑。ZSHRC文件作为admind,然后在上面的评论中添加@charlax提到的代码:

PYTHON_BIN_PATH="$(python3 -m site --user-base)/bin"
PATH="$PATH:$PYTHON_BIN_PATH"

如何使pipenv一个基本命令

使用Python3的Pipenv需要以“$ python -m Pipenv[命令]”或“$ Python3 -m Pipenv[命令]”的方式运行;开头的"python"命令根据你在shell中激活python的方式而有所不同。修复并设置为"$ pipenv[命令]":[Git Bash中的示例]

$ cd ~
$ code .bash_profile

第一行是必要的,因为它允许您访问.bash_profile文件。第二行在VSCode中打开.bash_profile,因此插入默认代码编辑器的命令。 在这一点上,你会想要(在.bash_profile中)编辑文件,添加这行代码:

alias pipenv='python -m pipenv'

然后保存文件并在Git Bash中输入:

$ source .bash_profile

然后你可以在任何地方使用pipenv作为命令,例如: $ pipenv shell 将工作。

这种使用方法适用于在Git Bash中创建命令。例如:

alias python='winpty python.exe'

在.bash_profile中输入: $ source .bash_profile 将允许Python以“Python”的形式运行。

不客气

发生这种情况是因为您没有在全局(系统范围)安装它。为了让它在你的路径中可用,你需要使用sudo安装它,就像这样:

$ sudo pip install pipenv

Python存储包的位置

在了解安装pipenv的命令之前,有必要了解pip安装Python包的位置。

全局站点包是Python安装包的地方,这些包将对系统上的所有用户和所有Python应用程序可用。可以使用该命令查看全局站点包

python -m site

例如,在使用Python 3.7的Linux上,路径通常是

/usr/lib/python3.7/dist-packages/setuptools

用户站点包是Python安装仅供您使用的包的地方。但是这些包对于您创建的所有Python项目仍然是可见的。你可以得到路径

python -m site --user-base

在使用Python 3.7的Linux上,路径通常是

~/.local/lib/python3.7/site-packages

使用Python 3.x

在大多数Linux和其他unix上,通常Python 2和Python 3是并排安装的。默认的Python 3可执行文件几乎总是python3。pip可能以以下任何一种方式可用,这取决于您的Linux发行版

pip3
python3-pip
python36-pip
python3.6-pip

Linux

避免与sudo一起使用pip !是的,这是安装Python包最方便的方式,可执行文件可以在/usr/local/bin/pipenv中找到,但这也意味着所有用户和您创建的所有Python项目都可以看到特定的包。相反,使用——user来代替每个用户的站点包

pip3 install --user pipenv

Pipenv在

~/.local/bin/pipenv

操作系统

在macOS上,推荐使用Homebrew安装Python。您可以轻松地升级Python,安装多个版本的Python,并使用Homebrew在不同版本之间切换。

如果您使用的是Homebrew'ed Python,则禁用pip install -user。全局站点包位于

/usr/local/lib/python3.y/site-packages

你可以在这里安全地安装Python包。Python 3。Y也在下面搜索模块:

 /Library/Python/3.y/site-packages
 ~/Library/Python/3.y/lib/python/site-packages

窗户

由于遗留原因,Python安装在C:\Python37中。Python可执行文件通常命名为py.exe,您可以使用py -m pip运行pip。

安装全局站点包

C:\Python37\lib\site-packages

因为你通常不共享你的Windows设备,所以全局安装一个包也是可以的

py -m pip install pipenv

Pipenv现在可以在

C:\Python37\Scripts\pipenv.exe

我不建议在Windows中使用——user安装Python包,因为默认的用户site-package目录在Windows漫游配置文件中

C:\Users\user\AppData\Roaming\Python\Python37\site-packages 

漫游配置文件用于终端服务(远程桌面、Citrix等)以及当您在企业环境中登录/注销时。在Windows中,漫游配置文件过大可能导致登录、注销和重新启动缓慢。