我在OSX yosemite上安装了多个版本的python。这些都像我想要的那样工作(即我可以使用2.7.10而不是3.4.x或系统2.5.x) 我注意到当我使用kivy运行.py文件时,我没有得到任何警告,但我确实得到了这个:
[INFO ] [Python ] v2.7.6 (default, Sep 9 2014, 15:04:36)
但是当我使用命令python
或kivy
这两个命令都使用2.7.10发起IDLE提示 kivy应该使用当前的Python版本吗?
echo $PATH
/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/opt/local/bin:/opt/local/sbin:/opt/ local / bin目录中:/ opt / local / sbin中:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/版本/电流/斌:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin :/用户/ subnetfile / Android的sdk_r16-MacOSX的/ Android的SDK-的MacOSX /平台工具/:/用户/ subnetfile / Android的SDK-MacOSX的/ Android的SDK-的MacOSX /平台工具/:/库/框架/ Python.framework /版本/ 2.7 /斌:/Library/Frameworks/Python.framework/Versions/2.7/bin中:/ opt / local / bin目录中:/ opt / local / sbin中:/Library/Frameworks/Python.framework/Versions/ 2.6 / bin中:在/ usr / local / bin中:在/ usr / bin中:/ bin中:/ usr / sbin目录:/ sbin目录中:/ opt / X11 / bin中
我现在想知道为什么我有所有重复的路径条目......? 我可以使用以下任何一种方式调用Python:
python python2-32 python2.6 python2.7-config pythonw2-32 pythonw2.7-32
python-32 python2-config python2.6-config pythonw pythonw2.5
python-config python2.5 python2.7 pythonw-32 pythonw2.6
python2 python2.5-config python2.7-32 pythonw2 pythonw2.7
但是,正如我所说,当我称之为“python”时,它会根据我的需要调出2.7.10 kivy刚刚使用旧版本的Python吗?
答案 0 :(得分:1)
.kv文件通过Finder与.app包相关联。在这种情况下Kivy.app
运行GUI应用程序并不知道您在bash启动脚本中设置的PATH,因此只能在Apple在操作系统中设置的路径上找到python。在这种情况下,我认为应用程序找到/ usr / bin / python系统提供的python是2.7.6
命令行将使用你的路径(需要整理出来),它找到的第一个python是/ Library中的一个,它将是来自python.org的2.7,目前最新的是2.7.10(我假设常春藤脚本也发现了这个,但我不知道它的细节)
您的路径在shell启动文件中设置,有关详细信息,请参阅此answer