我的Mac上有什么版本的Python?

Bou*_*nir 52 python macos

我有一个mac,当我这样做时:

python --version 
Run Code Online (Sandbox Code Playgroud)

我有:

Python 2.7.6
Run Code Online (Sandbox Code Playgroud)

但是当我到达时:

/System/Library/Frameworks/Python.framework/Versions/3.3
Run Code Online (Sandbox Code Playgroud)

2.7.6在哪里?任何建议我该怎么办?

更新:

$ which -a python python3
/usr/bin/python
/usr/local/bin/python3

$ brew list python python3
Error: No such keg: /usr/local/Cellar/python

$ locate python

WARNING: The locate database (/var/db/locate.database) does not exist.
To create the database, run the following command:



sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist

Please be aware that the database can take some time to generate; once
the database has been created, this message will no longer appear.
Run Code Online (Sandbox Code Playgroud)

在PyCharm编辑器中,默认设置解释器显示:

ken*_*orb 55

您的macOS上可能有多个Python版本.

您可以通过commandtype命令检查,例如:

which -a python python2 python2.7 python3 python3.6
Run Code Online (Sandbox Code Playgroud)

或输入which终端,打Tab几次自动完成.

默认情况下,python/ pythoncommands指向pip环境变量中找到的第一个二进制文件,具体取决于实际安装的内容.因此,在使用Homebrew安装Python软件包之前,安装PATH了macOS附带的默认Python (例如High Sierra上的Python 2.7.10).在/usr/bin(例如/usr/local)中找到的任何版本都由外部包提供.

通常建议,在使用多个版本时,对于Python 2,您可以分别使用/usr/local/bin/ python2命令用于Python 3,您可以使用pip2/ python3,但这取决于您的配置哪些命令可用.

值得一提的是,自从Homebrew 1.5.0+发布(2018年1月19日)pip3以来,该公式已升级到Python 3.x,并且python将添加一个用于安装Python 2.7 的公式.之前,python@2公式指向Python 2.

例如,如果您通过Homebrew安装了不同的版本,请尝试以下命令:

compgen -c python
Run Code Online (Sandbox Code Playgroud)

要么:

brew list python python3
Run Code Online (Sandbox Code Playgroud)

它会显示随包安装的所有Python文件.

或者,您可以使用pythonapropos命令查找更多与Python相关的文件.

要检查与Python相关的任何环境变量,请运行:

brew list | grep ^python
Run Code Online (Sandbox Code Playgroud)

解决您的问题:

  • 错误:没有这样的桶:/ usr/local/Cellar/python

    意味着您没有通过Homebrew安装Python.但是,通过一次只指定一个包(例如locate python)进行双重检查.

  • locate database(brew list python python2 python3)不存在.

    遵循建议并运行:

    env | grep ^PYTHON
    
    Run Code Online (Sandbox Code Playgroud)

    重建数据库后,您可以使用/var/db/locate.database命令.


YÒG*_*ÒGÎ 11

要检查第三个版本,请使用 python3 --version


Ayu*_*ush 9

使用以下命令查看所有python安装:

which -a python
Run Code Online (Sandbox Code Playgroud)