首页 文章

阻止文本编辑器破坏python文件中的空格[关闭]

提问于
浏览
-2

我有一个非常恼人的问题,当我在一个文本编辑器或另一个文本编辑器中打开它时,我不太明白我的python文件被破坏了(看起来毁了?) . 空间消失,并与他们控制块 . 显然这与如何保存空白有关,但我不完全理解它或知道如何控制它 .

我在多个编辑器中编辑最多三台计算机上的文件,主要是kate,nano和vim . 我以为我把它们全部设置为tab = 4个空格,并且* .py自动注册,但显然它不像那样工作 .

我需要做些什么来确保我的文件在文本编辑器中的表现一致?对于上述编辑的具体建议以及问题的一些解释将不胜感激 .

2 回答

  • 3

    使用空格,而不是制表符 . 与制表符不同,空格始终被解释为相同的宽度 . PEP 8(python样式指南)recommends spaces over tabs,和Google Python styleguide一样 .

    因此,如果您始终只使用空格,则代码将始终缩进 .

    您可以通过使用 -tt 开关运行代码来检查python文件中是否存在不一致的选项卡使用情况:

    python -tt yourscript.py
    

    清除不一致后,使用Unix expand command用空格替换制表符:

    expand -t 4 yourscript.y
    

    其中 -t 4 指示 expand 用4个空格替换制表符 .

  • 1

    您的问题是您的一个或多个编辑器正在混合标签和空格以进行缩进 . 即使您将每个编辑器设置为将选项卡显示为4个空格,Python也会将2个选项卡字符的缩进处理与1个选项卡和4个空格的缩进不同,尽管它们在编辑器中看起来相同 . 您需要将编辑器配置为插入固定数量的空格而不是制表符 . 然而,这是Stack Overflow的主题;您需要在例如superuser.com上询问您的特定编辑 .

相关问题