与苹果提供的Python并排安装Python 2.7.1
我刚刚从下载了Python 2.7.1 DMG。我已经看到了获得ActivePython的建议,但我更喜欢Python.org上的建议与苹果提供的Python并排安装Python 2.7.1,python,macos,osx-snow-leopard,Python,Macos,Osx Snow Leopard,我刚刚从下载了Python 2.7.1 DMG。我已经看到了获得ActivePython的建议,但我更喜欢Python.org上的建议 如果我只是在DMG中运行mpkg安装程序,接受所有默认设置,它会与苹果提供的Python和平共处吗 如果我在终端中键入python,我会得到哪一个 在终端中,如何指定运行苹果提供的Python?那我自己安装的Python呢 在安装不同的Python版本时,关于设置路径的内容是什么?我知道Python安装程序会自动设置它。但我还是想看看引擎盖下面。我知道如何在Wi
mpkg
安装程序,接受所有默认设置,它会与苹果提供的Python和平共处吗python
,我会得到哪一个路径的内容是什么?我知道Python安装程序会自动设置它。但我还是想看看引擎盖下面。我知道如何在Windows(环境变量)中执行此操作。对于Mac OS X,我如何修补路径
PATH
。如果我想重新开始,垃圾箱或AppCleaner卸载Python可能不是很有效。因此,我想对上述问题有一个清晰的认识
检查哪个python
python\u-mac
和python\u-standard
)创建额外的符号链接如果在使用python.org安装程序时没有更改默认的包集,那么从命令行键入
python
应该运行新安装的python 2.7。(运行安装程序后需要启动新的终端会话才能看到这一点。)当前的python.org OS X安装程序根据python版本在应用程序目录中创建一个名为python m.n
的文件夹。如果查看/Applications/python2.7
,您将看到一个名为更新Shell Profile.command
的文件。这是一个shell脚本;您可以在编辑器中或使用Quicklook检查它。其目的是修改OS X上最常见的shell程序的启动文件(bash
,sh
,csh
),以确保新Python可执行命令所在的目录添加到PATH环境变量中目录列表的前面,因此,在找到Apple提供的python命令之前,将先找到其中的python命令。默认情况下,安装程序会自动为您运行updateshell Profile.command
。这将导致如下结果:
$ cat ~/.bash_profile
# .bash_profile
# ... other stuff
# Setting PATH for Python 2.7
# The orginal version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH
$ ls -l /Library/Frameworks/Python.framework/Versions/2.7/bin
total 272
lrwxr-xr-x 1 root admin 8 Nov 30 00:49 2to3@ -> 2to3-2.7
-rwxrwxr-x 1 root admin 140 Nov 30 00:30 2to3-2.7*
lrwxr-xr-x 1 root admin 7 Nov 30 00:49 idle@ -> idle2.7
-rwxrwxr-x 1 root admin 138 Nov 30 00:30 idle2.7*
lrwxr-xr-x 1 root admin 8 Nov 30 00:49 pydoc@ -> pydoc2.7
-rwxrwxr-x 1 root admin 123 Nov 30 00:30 pydoc2.7*
lrwxr-xr-x 1 root admin 9 Nov 30 00:49 python@ -> python2.7
lrwxr-xr-x 1 root admin 16 Nov 30 00:49 python-config@ -> python2.7-config
-rwxrwxr-x 1 root admin 33764 Nov 30 00:31 python2.7*
-rwxrwxr-x 1 root admin 1663 Nov 30 00:31 python2.7-config*
lrwxr-xr-x 1 root admin 10 Nov 30 00:49 pythonw@ -> pythonw2.7
-rwxrwxr-x 1 root admin 33764 Nov 30 00:31 pythonw2.7*
lrwxr-xr-x 1 root admin 11 Nov 30 00:49 smtpd.py@ -> smtpd2.7.py
-rwxrwxr-x 1 root admin 18586 Nov 30 00:30 smtpd2.7.py*
如果您查看该目录,应该会看到如下内容:
$ cat ~/.bash_profile
# .bash_profile
# ... other stuff
# Setting PATH for Python 2.7
# The orginal version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH
$ ls -l /Library/Frameworks/Python.framework/Versions/2.7/bin
total 272
lrwxr-xr-x 1 root admin 8 Nov 30 00:49 2to3@ -> 2to3-2.7
-rwxrwxr-x 1 root admin 140 Nov 30 00:30 2to3-2.7*
lrwxr-xr-x 1 root admin 7 Nov 30 00:49 idle@ -> idle2.7
-rwxrwxr-x 1 root admin 138 Nov 30 00:30 idle2.7*
lrwxr-xr-x 1 root admin 8 Nov 30 00:49 pydoc@ -> pydoc2.7
-rwxrwxr-x 1 root admin 123 Nov 30 00:30 pydoc2.7*
lrwxr-xr-x 1 root admin 9 Nov 30 00:49 python@ -> python2.7
lrwxr-xr-x 1 root admin 16 Nov 30 00:49 python-config@ -> python2.7-config
-rwxrwxr-x 1 root admin 33764 Nov 30 00:31 python2.7*
-rwxrwxr-x 1 root admin 1663 Nov 30 00:31 python2.7-config*
lrwxr-xr-x 1 root admin 10 Nov 30 00:49 pythonw@ -> pythonw2.7
-rwxrwxr-x 1 root admin 33764 Nov 30 00:31 pythonw2.7*
lrwxr-xr-x 1 root admin 11 Nov 30 00:49 smtpd.py@ -> smtpd2.7.py
-rwxrwxr-x 1 root admin 18586 Nov 30 00:30 smtpd2.7.py*
新的python可以通过命令python2.7
获得,但也有一个符号链接作为python
指向它。由于路径环境已更改:
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
当您在shell中键入python
作为命令时,将首先在/usr/bin
中苹果提供的python
之前找到该符号链接,该目录安装了系统提供的用户命令(在OS X 10.6上):
(注意,一般来说,您不应该试图修改或删除/usr/bin
中的文件,因为它们是OS X的一部分,由Apple管理。)
在OSX上管理多个Python安装有多种方法;查看档案或网络。需要记住的一点是,您可以始终使用所需python命令的绝对路径进行检查。因此,使用上面修改的路径,您应该看到以下行为:
$ /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 -c 'import sys;print(sys.version)'
2.7.1 (r271:86882M, Nov 30 2010, 09:39:13)
[GCC 4.0.1 (Apple Inc. build 5494)]
$ python2.7 -c 'import sys;print(sys.version)'
2.7.1 (r271:86882M, Nov 30 2010, 09:39:13)
[GCC 4.0.1 (Apple Inc. build 5494)]
$ python -c 'import sys;print(sys.version)'
2.7.1 (r271:86882M, Nov 30 2010, 09:39:13)
[GCC 4.0.1 (Apple Inc. build 5494)]
$ /usr/bin/python -c 'import sys;print(sys.version)'
2.6.1 (r261:67515, Jun 24 2010, 21:47:49)
[GCC 4.2.1 (Apple Inc. build 5646)]
$ /usr/bin/python2.6 -c 'import sys;print(sys.version)'
2.6.1 (r261:67515, Jun 24 2010, 21:47:49)
[GCC 4.2.1 (Apple Inc. build 5646)]
如果使用
virtualenv
你可以关注这些文章
它们将指导您在不同的地方安装不同版本的python,每个地方都有自己的站点包集,并让它们分别在不同的项目上工作。强烈建议您仔细研究它,因为它还解释了如何以一种简单的方式更改PATH
变量,以便您的shell命令可以找到不同的python安装
下面是一些关于不同python安装的快速信息
在终端键入哪个python
将告诉您它的位置。您还可以使用python-V
查看所使用的版本。记住,python
和python2.x
可以是不同的东西。您可以使用alias
命令为不同的python安装分配适当的名称,以便在终端或脚本中调用它们。比如说,
alias /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 sys-py27
- 苹果提供的系统python安装在
和/system/Library/Frameworks/python.framework
/usr/bin/python
- 事实上,您不应该试图手动删除它们来处理这些问题。计算机中的其他软件可能正在使用python系统李>
- 要检查当前可以使用的系统python
python-c'导入系统;打印(系统版本)
- 下载并运行的打包安装程序通常安装到
/Library/Frameworks/Python.framework/Versions/2.7/bin/
- 您可以手动删除Python.framework文件夹。您可能还会在Applications文件夹中看到Python以及IDLE、AppBuilder和PythonLauncher等其他内容。如果需要的话,你可以继续删除这些内容李>
- MacPorts将在
/opt/local/Library/Frameworks/python.framework/Versions/2.7/bin/
- 您可以使用常用的
卸载它们,如果您想删除依赖项,请使用类似以下代码的方法sudo-port-uninstall-packageName
sudo端口卸载pytho
- 您可以使用常用的