我使用Windows。我写了一个Python 3.1脚本,我的Mac使用的朋友想运行,但我们不能让Python 3.1在他的Mac上运行。我认为问题是没有安装Python 3.1框架。这正是我所做的以及我认为这就是问题的原因。
我从Python下载页面(this file)下载了Python 3.1.2。我打开文件,然后打开“Python.mpkg”。我继续安装向导,并确保在向导期间选中该框以安装“Shell配置文件更新程序”。我转到“/ Applications / Python 3.1”并双击“Update Shell Profile.command”。
接下来,我选择了我编写的python脚本,并在菜单栏中选择“文件”,“获取信息”。 在“打开方式”下,我从“/ Applications / Python 3.1”中选择了“PythonLauncher”。然后我点击“全部更改”按钮。现在我双击我的程序来运行它,但它是由Python 2.5.1而不是Python 3.1运行的。 (我很确定,我写了一个程序“print(sys.version)”。)
所以现在我试图弄清楚为什么“/ Applications / Python 3.1”中的“PythonLauncher”正在使用Python 2.5.1。我打开“PythonLauncher”,发现“Python Script”的解释器是“/ 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?
答案 0 :(得分:2)
答案 1 :(得分:1)
Python Launcher.app
是一个有点被忽视的应用;有一些关于将它们全部一起删除的讨论,因为如果有人从网上下载任意Python脚本,这可能会带来一定的安全风险。如果您安装了多个Python版本,它也可能是一种打击或错过。许多人只是从终端窗口命令行运行Python,所以他们不需要Python Launcher.app
,这可能是最安全的事情。为此,您应首先在Update Shell Profile
中运行/Applications/Python 3.1
命令,这将确保将正确的Python框架bin
目录添加到您的shell路径中。然后你可以输入:
$ python3 /path/to/script.py
也就是说,可以通过将解释器路径更改为
来使Python Launcher
工作。
/Library/Frameworks/Python.framework/Versions/3.1/bin/python3
但我不鼓励你这样做。
另一个更好的GUI选项是启动IDLE.app
并将文件拖放到停靠栏中,或在文件菜单中打开它们。
答案 2 :(得分:0)
/System/Library/Frameworks/Python.framework/...
中的版本作为OS X的一部分放在那里。它们应该保持不变。 (见this question。)
.dmg文件安装到/Library/Frameworks/Python.framework/...
。这些是用户安装的,因此您可以随意安装/卸载/移动。这些安装程序还在/usr/local/bin
中创建了符号链接。
如果您希望/Library/.../3.1/bin
位于您的路径中,则可以在shell中的路径中添加/usr/local/bin
或python3
。