关于python:Notepad ++缩进搞砸了

Notepad++ indentation messes up

我用Python编写代码,我非常喜欢Notepad ++。 但是,当我使用tab缩进时,在Notepad ++中似乎很好,但是当我运行程序时,我得到一个缩进错误,当我在Emacs中检查我的代码时,我发现Notepad ++实际上添加的选项卡空间比 它显示在屏幕上。 怎么了?


没有通用的标签大小,所以我总是确保用空格替换标签(所以你知道你看到的是你在其他地方得到的)

转到设置 - >"首选项..." - >语言菜单/选项卡设置,然后选中"按空格替换"


我建议您去查看>显示符号>显示空白和标签,以更好地了解缩进的外观。


PEP 8告诉我们在Python中使用空格而不是制表符来实现交叉编辑器的兼容性和一致性:

http://www.python.org/dev/peps/pep-0008/

看看如何在Notepad ++中将标签更改为空格的答案

在Notepad ++中将制表符转换为空格

也许那会解决你的问题


使用适用于Notepad ++的Python Indent插件:
我使用过Pycharm和amp; Notepad ++,坦率地说 - 即使两者都安装在我的机器上,我现在更喜欢使用Notepad ++。所以,如果你想继续使用Notepad ++进行Python开发,你一定要安装'Python Indent'插件。在编写Python代码时,此插件将自动为您创建选项卡。插件的唯一缺点是你必须记住启用它(通过转到插件 - > Python缩进,然后单击'启用')当你想要使用它。

要在Notepad ++中安装Python Indent插件,只需转到"插件" - >"插件管理器",然后单击"显示插件管理器"。然后选中'Python Indent'并单击'Install'按钮。

此外,您应该遵循Python的使用指南:
选项卡间距可能因程序而异,并且遵循PEP8的建议(Python增强建议编号8 - 这是Python的"接受的样式和使用指南"),您应该使用空格键进行缩进。在这里查看关于间距的PEP8页面:https://www.python.org/dev/peps/pep-0008/#tabs-or-spaces

祝好运!


我是python的新手并开始使用Notepad ++。但是我遇到了和你一样的问题......压痕问题。根据我老人的建议,我改用了PyCharm社区版。我将代码从Notepad ++粘贴到PyCharm,它突出显示了带缩进问题的块...问题是,有些行使用了空格,有些使用了制表符。发生这种情况是因为我工作的代码是从互联网上获取的。

检查这种不一致性可以解决问题。或者,有一个更好的选择......切换到PyCharm。它专为python编码而构建。希望这有助于像我这样的人在Notepad ++中搜索缩进问题的解决方案


微小更新 - 要将空格作为选项卡,现在转到设置>>首选项>>标签设置并选中"按空格替换"框