在 Mac OS X 上打开 IDLE 时崩溃

3
我最近尝试在我的MacBook Pro上安装Python 3.2和IDLE 3。我成功地安装了Python 3.2(也就是说,我可以从终端运行它),但当我尝试安装IDLE 3.2时,我一定做错了什么,因为现在无论我是通过终端还是Finder打开它们,IDLE 2.7和IDLE 3.2都会立即崩溃,并显示“Python意外退出”的消息。有人知道如何解决这个问题吗?我已经安装了正确的ActiveTCL软件包(并重新安装了它),但仍然没有用。我曾试图重新安装Python 3.2和IDLE 3,但我不确定是否安装正确。通过大量搜索,我发现有些人说这很可能是路径问题,但我找到的所有解决方案都是针对Windows的,所以我不确定如何将其应用到我的Mac上。

在Python提示符下尝试使用import idlelib.idle,或在Bash提示符下使用python /System/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/idlelib/idle.py - CoffeeRain
"import idlelib.idle" 导致了与之前相同的崩溃,而另一个命令则表示没有这样的文件或目录。所以我将 /Library/Frameworks/Python.framework/Versions 中的 "3.2" 文件夹复制到 /System/Library/Frameworks/Python.framework/Versions 文件夹中,然后重新输入了命令。这是我得到的结果:"Your Python may not be configured for Tk. **", file=sys.stderr) SyntaxError: invalid syntax。 - drewlaqua
你可能没有安装正确版本的TKinter。尝试查看这个链接 - CoffeeRain
请勿修改或删除/System/Library中的任何文件,因为它是OS X的一部分,由Apple进行管理。由于Apple尚未在OS X中发布Python 3的版本,因此/System/Library中没有与之相关的文件。如果您使用python.org安装程序安装了Python 3.2,则其文件将位于/Library/Frameworks中。 - Ned Deily
是的,但你说你把3.2文件夹复制到/System/Library了。这本身不是问题,因为/System/Library中没有3.2文件夹。但如果有人按照这种模式操作,将/Library中的2.7文件夹复制到/System/Library,那么就会清除10.7中由苹果提供的系统Python 2.7。 - Ned Deily
显示剩余2条评论
5个回答

1

尝试重命名或删除目录~/.idlerc,这是Python中唯一与IDLE 2.7和3.2共同使用的东西。如果这没有帮助,请明确说明您安装了哪个Python 3版本,使用的是哪个版本的OS X,并显示终止报告中的堆栈跟踪。

更新:根据您提供的崩溃报告,似乎Tk在初始化菜单项时崩溃:

...
4   Tcl                             0x00000001013dfa61 Tcl_Panic + 162
5   Tk                              0x000000010151c523 TkpGetColor + 383
6   Tk                              0x0000000101529a25 TkpMenuInit + 156
7   Tk                              0x00000001014ac254 TkMenuInit + 88
8   Tk                              0x000000010152c687 -[TKApplication(TKMenus) _setupMenus] + 53
...

我没有看到任何关于使用 A/S Tcl/Tk 8.5 在 10.7.3 上使用 IDLE 出现类似问题的报告,而且我自己在 10.7.3 上也无法复制此问题。然而,Cocoa Tcl/Tk 8.5 不是最健壮的框架,当使用其他语言或输入方法(除 USUS Extended 外)时可能容易出现问题。另一个可能性(更有可能的)是如果您正在使用某些第三方菜单增强应用程序或首选项面板(例如添加颜色到菜单)。如果这些建议无法帮助您隔离问题,请在 Tcl Mac 邮件列表上提问 (tcl-mac@lists.sourceforge.net,存档位于 http://dir.gmane.org/gmane.comp.lang.tcl.mac)。


删除 ~/.idlerc 不会出现任何问题吗? - drewlaqua
~/.idlerc 包含一些文件,其中 IDLE 存储更改的首选项、最近编辑的文件名称等。如果不存在,则根据需要重新创建它。 - Ned Deily
我已经删除了所有我认为可能是“第三方菜单增强应用程序或首选项面板”的程序,但仍然无法使其正常工作。如果我重新安装 Lion,这会解决问题吗? - drewlaqua
我之前安装过了,但IDLE仍然崩溃。如果我重新安装并通过Time Machine加载备份,那么Python系统文件会从磁盘还是备份中重新安装?如果需要的话,我想这是一个选项。 - drewlaqua
有没有一种方法可以重新安装随OSX附带的原始Tcl/Tk?看起来可能是我做的某些事情导致了它的损坏。 - drewlaqua
显示剩余2条评论

1

谢谢您的回复,但对我没有用。它仍然崩溃。 - drewlaqua
对我也没有用。 IDLE v3.2.3 python v3.2.3 和 tk v8.5。不过,保存状态的链接非常好(我是狮子的新手),而且我很高兴chflags nohidden ~ / Library - Jesse Black

1
我遇到了同样的问题。我的操作系统是OSX 10.8.5,Python版本为3.3.3,IDLE版本为3.3.3,重新安装Python并没有解决问题。我通过删除~/.idlerc目录来解决任何问题。当我尝试更改一些首选项(IDLE->Preferences->General->Startup Preferences->At Startup Open Edit Window)时,我的问题第一次显现出来,所以我认为通过删除~/.idlerc文件夹重置我的首选项是解决方案。

0

我曾经遇到过同样的问题,当我在我的MAC上打开IDLE时,它会崩溃。 最终我更新了我的电脑到OS Yosemite和最新版本的Python,但它仍然会关闭。 它开始的原因是因为我尝试更改某些键的首选项。 重置首选项解决了这个问题! 我输入了mc ~/.idlerc idlerc2 :)


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接