我试着用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,但我不清楚该向文件中添加什么,或者修改是否有必要。


当前回答

通过覆盖全局/系统管理的pip安装,在全局范围内安装pipenv可能会产生不利影响,从而在试图运行pip时导致导入错误。

您可以在用户级别安装pipenv:

PIP安装——pipenv用户

这应该在/home/username/的用户级别安装pipenv。局部的,这样就不会与pip的全局版本冲突。在我的例子中,在运行了“——user”开关之后,这仍然不起作用,所以我运行了一次更长的“fix what I screw up”命令来恢复系统管理的环境:

Sudo python3 -m PIP uninstall PIP && Sudo apt install python3- PIP—重新安装

升级pip后出现错误:无法导入名称“main”

然后做了以下事情:

mkdir /home/username/.地方……如果它还不存在

出口PYTHONUSERBASE = / home /用户名/。local

确保导出生效(在这个过程中咬了我一下):

echo $ PYTHONUSERBASE

然后,我运行pipenv用户的pip install,一切正常。然后我可以从CLI运行pipenv,它不会覆盖全局/系统管理的pip模块。当然,这是特定于用户的,所以您要确保以希望使用pipenv的用户的身份安装pipenv。

引用:

https://pipenv.readthedocs.io/en/latest/diagnose/#no-module-named-module-name https://pipenv.readthedocs.io/en/latest/install/#pragmatic-installation-of-pipenv https://pip.pypa.io/en/stable/user_guide/#user-installs

其他回答

首先检查是否安装了pipenv:

pipenv --version

如果您的系统上没有可用的版本,那么运行以下命令来安装pipenv

sudo aptitude install pipenv 

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

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

pip3 install pipenv
pipenv shell

如果已经进行了用户安装,则需要将正确的文件夹添加到PATH变量中。

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

参见pipenv的安装说明

Osx的伙计们,过来!!

正如@charlax回答的那样(对我来说是最好的一个),你可以使用一个更动态的命令来设置PATH,但对于mac用户来说,这是行不通的,有时你从站点获得的USER_BASE路径是错误的,所以你需要找出你的python安装在哪里。

$ which python3
/usr/local/bin/python3.6

你会得到一个符号链接,然后你需要找到源的符号链接。

$ ls -la /usr/local/bin/python3.6
  lrwxr-xr-x  1 root  wheel  71 Mar 14 17:56 /usr/local/bin/python3.6 -> ../../../Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6

(这个. . / . . / . ./表示根)

所以你找到了python路径(/Library/Frameworks/ python .framework/Versions/3.6/bin/python3.6),然后你只需要放入you ~/。Bashrc如下:

导出路径= " $路径:/图书馆/框架/ Python.framework /版本/ 3.6 / bin”

我在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