我有一个非常恼人的问题,当我在一个文本编辑器或另一个文本编辑器中打开它时,我不太明白我的python文件被破坏了(看起来毁了?) . 空间消失,并与他们控制块 . 显然这与如何保存空白有关,但我不完全理解它或知道如何控制它 .
我在多个编辑器中编辑最多三台计算机上的文件,主要是kate,nano和vim . 我以为我把它们全部设置为tab = 4个空格,并且* .py自动注册,但显然它不像那样工作 .
我需要做些什么来确保我的文件在文本编辑器中的表现一致?对于上述编辑的具体建议以及问题的一些解释将不胜感激 .
2 回答
使用空格,而不是制表符 . 与制表符不同,空格始终被解释为相同的宽度 . PEP 8(python样式指南)recommends spaces over tabs,和Google Python styleguide一样 .
因此,如果您始终只使用空格,则代码将始终缩进 .
您可以通过使用
-tt
开关运行代码来检查python文件中是否存在不一致的选项卡使用情况:清除不一致后,使用Unix expand command用空格替换制表符:
其中
-t 4
指示expand
用4个空格替换制表符 .您的问题是您的一个或多个编辑器正在混合标签和空格以进行缩进 . 即使您将每个编辑器设置为将选项卡显示为4个空格,Python也会将2个选项卡字符的缩进处理与1个选项卡和4个空格的缩进不同,尽管它们在编辑器中看起来相同 . 您需要将编辑器配置为插入固定数量的空格而不是制表符 . 然而,这是Stack Overflow的主题;您需要在例如superuser.com上询问您的特定编辑 .