安装完pip后,提示命令未找到

6

我是一名有用的助手,可以为您进行文本翻译。

我遇到了一个问题。我有一个Python脚本,想在我的OSX上运行,但似乎遇到了很多问题。

要运行该脚本,我需要安装Python和Moviepy。

要安装Moviepy,我使用了以下命令:

sudo pip install moviepy

响应如下:

sudo: pip: command not found

我尝试使用命令安装pip:

sudo easy_install pip

然后得到了这个答案:

Searching for pip
Best match: pip 9.0.1
Processing pip-9.0.1-py2.7.egg
pip 9.0.1 is already the active version in easy-install.pth

Using /Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg
Processing dependencies for pip
Finished processing dependencies for pip

我尝试再次运行了

sudo pip install moviepy

但我仍然遇到了这个问题。我该怎么做?

更新:

不确定在OSX上如何操作,但你可以尝试使用pip3 – Rehan Azher 23分钟前

sudo pip3 install moviepy
Password:
sudo: pip3: command not found

似乎pip不在您的路径中,但只要Python能找到它:sudo python -m pip install moviepy应该可以解决。不过,请检查一下您的$PATH环境变量。- zwer 14分钟前
sudo python -m pip install moviepy
/usr/bin/python: No module named pip

更新2

对你来说一个好的选择是考虑使用OSX的源之一来安装pip,比如Debian-based发行版中的apt程序,而不是使用easy_install。- Shiva 4小时前

sudo apt install moviepy
Password:
Unable to locate an executable at "/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/bin/apt" (-1)

我不知道为什么大家都会遇到这个问题。在使用Python时,您需要做出基本的决定。您可以运行苹果提供的Python 2.7版本,这是古老的版本且没有pip,或者您可以使用homebrew安装Python3和pip3,并将/usr/local/bin放在您的PATH的开头。但请不要尝试两种混合使用。- Mark Setchell 3小时前
尝试安装homebrew但无法找到我要查找的包moviepy。

不确定在OSX上是否可行,但您可以尝试使用pip3。 - Rehan Azher
1
似乎 pip 不在您的路径中,但只要 Python 能找到它:sudo python -m pip install moviepy 就可以了。不过,还是要检查一下 $PATH 环境变量。 - zwer
这是默认的OSX Python还是通过Homebrew等方式安装的? - grahamlyons
一个不错的选择是考虑使用OSX的源之一,比如Debian-based发行版中的apt程序来安装pip,而不是使用easy_install - Shiva
2
不知道为什么每个人都在这个问题上卡住了。当您使用Python时,您有一个基本的决定要做。你要么运行苹果提供的Python 2.7版,它已经过时了,没有pip,要么你使用homebrew来安装Python3和pip3,并将/usr/local/bin放在您的PATH的开头。但不要尝试混合使用这两种方法。 - Mark Setchell
这个回答解决了你的问题吗?bash:pip:命令未找到 - Wenfang Du
3个回答

6

尝试使用这个方法:

pip3 install package-name

这对我很有效!


1
是的,这很混乱。今天,您最好的选择是不要碰老旧的操作系统提供的 Python 版本(在/Library/Python和类似位置中的所有内容),而是重新开始。
看起来您已经做到了(因为您在/usr/bin/python中有可执行文件),但如果没有,请使用 Homebrew 来获取 Python 2 是最简单的方法。按照网站上的说明安装 Homebrew,然后使用它来安装 Python:
brew install python@2

Python 2.7.9+已经自带pip,但如果你使用的是旧版本,则需要使用Python本身和get-pip.py来安装pip(而不是已被弃用的easy_install)。
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

请注意,get-pip.py 包含了一个 pip 的副本,以便有效地安装 pip。是的,情况就是这么糟糕。

最后,请注意,Python 2 将在不到6个月内结束生命周期。如果您有条件,考虑直接跳过 Python 3。然后只需执行以下操作:

brew install python

因为自3.4版本起,pip3已经随着python3一同提供。Homebrew可以管理安装Python 2和Python 3而不会冲突。
请注意,这个过程在每个操作系统和每个月都可能不同。但至少它应该让您在可预见的未来继续前进。

0

你能否进入Python shell并输入import pip?如果可以,那么这意味着pip包已经安装,但是没有可用的命令行脚本/程序。

在我的电脑上,命令行pip程序实际上是一个Python脚本,并位于/usr/local/bin/中,该路径已经添加到了我的PATH环境变量中。以下是我的pip脚本的内容。

#!/usr/bin/python

import re
import sys

from pip import main

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())

这是一个不太光彩的技巧。你可以在你的/usr/local/bin/目录(或类似于OSX的其他目录)中创建一个名为pip的新文件,并将上述行复制到其中。

sudo touch /usr/local/bin/pip # create a new empty file called "pip"
# ... open the file in your favorite editor, copy the above contents and save the file
sudo chmod +x /usr/local/bin/pip # make it executable

文件的第一行(#!/usr/bin/python),被称为 "Shebang",指向应该在命令行上运行此文件时执行此文件的程序。您应该在那里放置计算机上 Python 程序的路径。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接