这里有多个问题.
首先,您不应该运行框架的可执行文件Python.框架可执行文件并不是要运行的,而实际上这只是一个巧合而已.
带有要运行的程序的框架会将它们放置在某个目录的bin目录中,该目录位于框架外部(例如/usr/local/bin)或内部(例如/Library/Frameworks/Foo.framework/Versions/X.Y/bin).默认情况下,Python 3.3会执行后者.
而且bin目录中的程序都是小写的,没有大写,因此没有Python可运行.
接下来,在Mac上以及除Windows之外的世界上几乎所有其他平台上,当前的工作目录都不是PATH的一部分.因此,当您键入Python –version时,它将在PATH的某处找到Python.您在当前目录中碰巧具有该名称的可执行文件这一事实并不意味着任何事情(除了它会使您感到困惑).如果您确实要运行该文件(但是您确实不想运行),则必须编写./Python.
同样,实际上没有充分的理由首先将cd进入framework目录.当然,您可以从那里使用适当的相对路径名运行所需的文件:例如bin / python3,但是您不想这样做.
接下来,可能您正在使用安装Python 3.3之前已经运行过的Shell. Update Shell Profile.command脚本可用于将Python 3.3添加到所有将来的Shell的PATH中,或使用该PATH生成新的Shell,但是无论哪种方式,它都不会影响任何现有的Shell.为了解决这个问题,您只需要启动一个新的shell.
下一个:
ls /usr/bin | grep python shows:
/usr/bin目录仅适用于OS内的程序.您自己安装的程序进入/usr/local/bin或PATH的其他位置. Python安装程序有一个选项(尽管它可能是隐藏的,我不记得了……)将启动程序放在/usr/local/bin中.它还具有一个选项(您已选择),可以将其框架bin目录放入PATH.但是无论哪种方式,它都永远不会在/usr/bin中放置任何内容.
最后,即使安装了Python 3.3,默认的python仍将是2.7. python3和python3.3将为3.3,但python和python2.7将为2.7.基本原理请参见PEP 394 — The “python” Command on Unix-Like Systems.但是简短的版本是,有各种各样的代码依赖于Python 2.7,并且与系统上可能安装的3.3不兼容,并且您不希望所有代码都停止工作.
因此,将它们放在一起:
>在Terminal.app中创建新的标签或窗口.
>输入python3 –version.