在Mac OS X 10.5.8上安装Python 3.1

1 投票
3 回答
4419 浏览
提问于 2025-04-16 07:31

我用的是Windows系统。我写了一个Python 3.1的脚本,我的朋友用的是Mac,他想运行这个脚本,但我们发现Python 3.1在他的Mac上无法正常工作。我觉得问题出在Python 3.1的框架没有被正确安装。下面是我做的事情,以及我认为问题所在的原因。

我从Python的下载页面下载了Python 3.1.2(这个文件)。我打开了这个文件,然后打开了“Python.mpkg”。接着我按照安装向导的步骤进行安装,并确保在向导中勾选了“Shell profile updater”这个选项。我去到“/Applications/Python 3.1”文件夹,双击了“Update Shell Profile.command”。

接下来,我选择了我写的Python脚本,然后在菜单栏中选择“文件”,再选择“获取信息”。在“打开方式”中,我选择了“PythonLauncher”,这个程序在“/Applications/Python 3.1”文件夹里。然后我点击了“更改全部”按钮。现在我双击我的程序来运行它,但它却是用Python 2.5.1来运行的,而不是Python 3.1。(我对此很确定,因为我写了一个程序来“print(sys.version)”。)

所以我开始想弄清楚为什么“/Applications/Python 3.1”里的“PythonLauncher”会用Python 2.5.1。我打开了“PythonLauncher”,发现“Python脚本”的解释器是“/usr/bin/pythonw”。于是我去到“/usr/bin/”文件夹,发现“pythonw”是一个指向“/System/Library/Frameworks/Python.framework/Versions/2.5/bin/pythonw2.5”的别名。显然,这里应该是指向3.1版本的。所以我去到“/System/Library/Frameworks/Python.framework/Versions/”,发现里面只有“2.3”和“2.5”这两个文件夹。3.1去哪了呢?

3 个回答

0

/System/Library/Frameworks/Python.framework/... 里的版本是操作系统自带的,最好不要动它们。(可以参考 这个问题

python.org 下载的 .dmg 文件会安装到 /Library/Frameworks/Python.framework/... 这个地方。这些是用户自己安装的,所以你可以随意安装、卸载或移动。安装程序还会在 /usr/local/bin 创建一些快捷方式。

如果你想让 python3 可以在命令行中直接使用,可以把 /Library/.../3.1/bin/usr/local/bin 加入到你的路径设置里。

1

Python Launcher.app 是一个有点被忽视的应用程序;有些人讨论过要不要把它删掉,因为如果有人从网上下载随便的 Python 脚本,这可能会带来安全风险。此外,如果你安装了多个 Python 版本,它的表现也可能不太稳定。很多人直接在终端窗口的命令行中运行 Python,所以他们根本不需要 Python Launcher.app,这样做可能是最安全的。要这样做,你首先需要在 /Applications/Python 3.1 中运行 Update Shell Profile 命令,这样可以确保正确的 Python 框架 bin 目录被添加到你的 shell 路径中。然后你只需输入:

$ python3 /path/to/script.py

不过,你是可以通过把解释器路径改成:

/Library/Frameworks/Python.framework/Versions/3.1/bin/python3

来让 Python Launcher 工作,但我不建议你这么做。

另一个更好的图形界面选项是启动 IDLE.app,然后把文件拖到它的 Dock 上,或者在它的文件菜单中打开文件。

2

看看这个 PythonBrew。它让我在Mac上安装Python变得简单多了。

还有这个可能对你有帮助:

有没有类似Ruby的RVM的Python工具?

撰写回答