如何:Macports选择python

kad*_*ian 32 python version macports python-2.5 python-2.7

当我进入:

port select --list python
Run Code Online (Sandbox Code Playgroud)

这是结果:

Available versions for python:
    none
    python25 (active)
    python25-apple
    python26-apple
    python27
    python27-apple
Run Code Online (Sandbox Code Playgroud)

我以为当我使用python时我会使用版本2.5.相反,当我输入"python"时,2.7版似乎是活跃的.如何将其更改为2.5版?

Python 2.7.1 (r271:86832, Jun 16 2011, 16:59:05) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
Run Code Online (Sandbox Code Playgroud)

小智 39

使用

osx$ port select --list python
Run Code Online (Sandbox Code Playgroud)

列出可用的Python安装.

然后使用"--set"选项"port select"来设置您想要使用的端口.

osx$ sudo port select --set python python27
Run Code Online (Sandbox Code Playgroud)

  • 注意:此答案在技术上不能回答原始问题.但是,它确实回答了我带到这个页面的问题,即如何选择哪个端口处于活动状态. (7认同)

vid*_*ige 27

为什么会这样

MacPorts /opt/local 默认安装二进制文件.

Mac上还有一个预安装的 python.只需键入python即可启动,它将启动不受MacPorts安装影响的预安装python版本.

要查看在键入python时将执行的版本

which python
Run Code Online (Sandbox Code Playgroud)

要启动mac ports版本使用

/opt/local/bin/python2.5
Run Code Online (Sandbox Code Playgroud)

如果您希望始终使用MacPorts二进制文件,则可以更改路径,以便在此之前/opt/local/bin显示. /use/local/bin

/opt/local/bin等等由MacPorts添加到〜/ .tcshrc中.另外一定要查看〜/ .profile和〜/ .bash_profile,因为这些是mac上的默认值.

在端口中选择版本

第一种类型port select --list python列出已安装的版本,然后仅举例sudo port select --set python python27来选择2.7.欲了解更多信息类型port help select.

  • 通常的macports用户在系统目录之前将/ opt/local/bin添加到它们的路径,因此得到port select给出的python.你可能在之后拥有它. (2认同)
  • 让/ opt/local/bin在/ usr/bin之前.例如,设置这样的路径.profile或.bash_profile文件:PATH = /选择/ local/bin目录:$ PATH,则可以重新启动Terminal.app或重读您更改的文件.如何挑选想要蟒蛇的答案就在这里找到:http://stackoverflow.com/questions/6116697/macports-python-select-command-not-found (2认同)

rai*_*mue 6

你的shell可能会缓存调用,python并且不再查看PATH.因此,当您在同一个shell会话中调用python之前port select,需要清除此缓存.

对于bash,请使用清除缓存

hash -r
Run Code Online (Sandbox Code Playgroud)

或者只是打开一个新的终端窗口.


Nic*_*ick 5

Python安装到:

  • 默认(Apple): /usr/local/bin
  • MacPorts的: /opt/local/bin
  • python.org:/Library/Frameworks/python...

系统需要默认的python,所以最好不要太乱用它.MacPorts Python使用方便,因为让包很容易.

您可以将链接设置为快捷方式:

sudo ln -s /opt/local/bin/python /usr/local/bin/ppython
Run Code Online (Sandbox Code Playgroud)

然后从命令行使用MacPorts版本:

ppython script.py
Run Code Online (Sandbox Code Playgroud)