我在Windows上的Idle上写了一些python程序。我后来转到了Ubuntu 14.04上的gedit。两者都有 python3 工作。
我在gedit中编辑了这些文件。
当我运行这些文件时,我得到了
'TabError: inconsistent use of tabs and spaces in indentation'
错误,即使 VISUALLY ,也没有做出不一致的标签或缩进。
[貌似,在Windows上'闲置标签 4个空格宽,而在gedit中,标签目前 8个空格宽。所以,我无法直接使用TAB
。]
如何解决此错误和问题? 任何解决方案?
答案 0 :(得分:2)
标准答案是配置您的编辑器(所有这些编辑器),以便您只有空格并且总是有四个空格。对于已经存在的代码,您必须将所有选项卡转换为空格(sed
可以快速完成,就像您使用的任何编辑器/ IDE一样)。
按下TAB
键时,大多数编辑者应该能够插入空格。
请参阅pep8以获取参考:
空格是首选的缩进方法。
选项卡应仅用于与已使用选项卡缩进的代码保持一致。
Python 3不允许混合使用制表符和空格进行缩进。
使用制表符和空格的混合缩进的Python 2代码应该转换为仅使用空格。
当使用-t选项调用Python 2命令行解释器时,它会发出有关非法混合制表符和空格的代码的警告。使用-tt时,这些警告会出错。强烈推荐这些选项!
另请参阅this以检查标签和空格的混合情况。
答案 1 :(得分:0)
使用Sublime文本编辑器的人们, 检查这种方式。