python - 为什么我的 Snow Leopard 在/usr/bin 中安装了这么多 Python?是什么决定了哪一个是系统Python?

标签 python macos osx-snow-leopard system

为什么我的 Snow Leopard 在/usr/bin 中安装了这么多 Python?是什么决定了哪一个是系统Python?

当我简单地输入“python”时,它是2.6.1〜但这似乎不是“System Python”,为什么不呢?如何改变Python系统以及有哪些缺点?

最佳答案

我的雪豹只安装了python 2.5和2.6,所以数量不是很多。您可能在系统范围内(在/usr/bin/中)或通过 macports (/opt/local)安装了其他 python(即 python3.0)。

默认的系统python是通过设置定义的,

defaults write com.apple.versioner.python Version 2.5

会将默认值更改为 2.5。您还可以使用环境变量,即对于 bash:

export VERSIONER_PYTHON_VERSION=2.5

所有这些都记录在 python 手册页中,

man python

总的来说,最好不要更改系统默认值。这是 OSX 可能依赖的某些脚本,并且您永远不知道这些脚本在不同版本上是否按预期工作。尤其是 Python 3 不同,可能真的会破坏你的整个系统。

如果您希望为自己的脚本使用不同的Python,可以

  1. 使用 virtualenv(总是好的)
  2. 更改您的 PATH 并确保您首选的 python 包含在/usr/sbin 之前
  3. 明确一点,使用/my/preferred/python 调用脚本

关于python - 为什么我的 Snow Leopard 在/usr/bin 中安装了这么多 Python?是什么决定了哪一个是系统Python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3615630/

相关文章:

python - 如何在 Django Rest Framework 中为 ListField 传递多个值?

Python:如何导入位于不同目录中的函数?

macos - 如何在 OS X 10.7.3 中复制目录?

java - JOGL和雪豹

cocoa - Xcode 项目更新为 3.2?

python - 为什么这个 3 行程序返回 None 作为输出?

python - Django 向第三方模型添加方法

python - 找不到 zsh 命令 : conda after upgrading to Catalina and even after reinstalling Anaconda

c++ - 在 Mac OS 中使用 vim 单键编译和运行 C++ 代码

cocoa - pboard 类型将被弃用