MacOS上的Pipenv故障“TypeError:”module“对象不可调用”

2024-05-15 11:44:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我开始尝试使用pipenv,但是在我的Mac上,我的Python环境似乎有点糟糕。我删除了这个post之后的OS X python,并使用brew安装了python2.7和python3.7。但是现在,当尝试使用pipenv(2.7)创建virtualenv和pipfile时,我不断收到一个关于python 3.7的错误,当锁定pacakges时:

$ pipenv --python=/usr/local/bin/python install pynetbox ipaddress
Virtualenv already exists!
Removing existing virtualenv...
Creating a virtualenv for this project...
Pipfile: /Users/daniel/scripts/netbox/Pipfile

...

adding ipaddress to Pipfile's [packages]...
Pipfile.lock not found, creating...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
c/lib/python3.7/site-packages/pipenv/utils.py", line 250, in actually_resolve_deps
    req = Requirement.from_line(dep)
  File "/usr/local/Cellar/pipenv/2018.7.1/libexec/lib/python3.7/site-packages/pipenv/vendor/requirementslib/models/requirements.py", line 704, in from_line
    line, extras = _strip_extras(line)
TypeError: 'module' object is not callable
/usr/local/Cellar/pipenv/2018.7.1/libexec/lib/python3.7/site-packages/pipenv/_compat.py:113: ResourceWarning: Implicitly cleaning up <TemporaryDirectory '/var/folders/pc/hlxw3whn3cl1x3h45ll2m8gw0000gs/T/pipenv-TYWa8Y-requirements'>
  warnings.warn(warn_message, ResourceWarning)

我重新安装了PIP和python几次,但都没有成功。任何想法都将不胜感激。我确信python可能正处于某种糟糕的状态:()


Tags: inpylockingvirtualenvlibpackagesusrlocal
3条回答

之前的答案在当时是正确的,但这个问题似乎已经在最新版本的pipenv中解决了。更新它为我修复了它:

pip3 install --upgrade pipenv

这允许您运行最新版本的pippipenv而不会出现问题

按@jwodder的答案执行的实际命令。

在根目录上运行以下命令。

pip install pipenv

那么

pipenv run pip install pip==18.0

那么

pipenv install

这是pipenv中的一个bug,它是与最新版本的pip(18.1):https://github.com/pypa/pipenv/issues/2924一起使用引起的。您需要将pip(pipenv环境内外)降级到18.0版本,pipenv才能工作。

相关问题 更多 >