Python文件运行良好但现在在IDLE 3.2中出错

时间:2013-05-21 10:31:42

标签: python python-idle python-3.3

我在6个月前在Linux系统上写了一些python代码。它工作得很好,但是现在我为Mac安装了IDLE 3.3并且我遇到了很多错误,例如“缩进时使用标签和空格不一致” 语法无效:打印命令等...

有没有人知道什么是错的?

2 个答案:

答案 0 :(得分:1)

上周我遇到了这个相同邪恶的问题。我责怪IDLE ...我认为它显示的标签很有趣*,因此即使代码不一致,我也认为我的代码很干净。

  • 我建议在您熟悉的文本编辑器中打开代码。 (或者使用Microsoft Word并打开特殊字符http://www.addbalance.com/word/nonprinting.htm的显示。)这样做后,我发现可以清楚地看到不一致之处。由于IDLE的显示特性,我在IDLE中看不到它们。在文本编辑器中清理代码,然后查看IDLE是否表现更好。
  • 清洁后,在“选项”>“配置IDLE”>“字体/标签”中检查设置。
  • 自从完成上述操作以来,我没有遇到任何问题,因此我认为IDLE正在读取我当前的缩进方法并沿用该方法。您和我莫名其妙地进入了一种模式,在这种模式下,IDLE感到困惑,并缩进了与以前不符的缩进。之所以会发生这种情况,是因为我在某一点上使用了空格,并将其修复,并且IDLE认为我是一个空格-压头,而不是制表符-压头。
  • 对于Windows 32位使用IDLE 3.7.4。

*我(不经意间)重现了我的问题,现在我确定IDLE每次按Tab键都会插入空格。 (仅供参考,空格是Python标准,但我没有遵循。)最重要的是,当我使用箭头键在选项卡式缩进中浏览光标时,IDLE就像它们是由空格组成的那样逐步通过它们( !)。最后,它放了四个空间,并显示为八个。这个邪恶的设计决定至少花了我半个小时。不好的缩进看起来与好的缩进相同,并且删除错误的缩进并用新的缩进替换也是完全徒劳的。非常令人沮丧。

答案 1 :(得分:0)

“缩进中标签和空格的使用不一致” 意味着您的缩进使用制表符和空格的组合。将所有缩进更改为制表符或空格以修复此问题。

在python 3+ print中不再是关键字。这是一个功能,所以你必须这样称呼它:

print("Hello World!")

括号内的参数。