【发布时间】:2010-07-29 20:05:58
【问题描述】:
我正在使用 Python 进行编码,我非常喜欢 Notepad++。但是,当我使用制表符缩进时,它在 Notepad++ 中似乎很好,但是当我运行程序时,我得到一个缩进错误,当我在 Emacs 或其他东西中检查我的代码时,我发现 Notepad++ 实际上添加的制表符空间比它显示在屏幕上。发生了什么?
【问题讨论】:
标签: python notepad++ indentation
我正在使用 Python 进行编码,我非常喜欢 Notepad++。但是,当我使用制表符缩进时,它在 Notepad++ 中似乎很好,但是当我运行程序时,我得到一个缩进错误,当我在 Emacs 或其他东西中检查我的代码时,我发现 Notepad++ 实际上添加的制表符空间比它显示在屏幕上。发生了什么?
【问题讨论】:
标签: python notepad++ indentation
没有通用的制表符大小,所以我总是确保用空格替换制表符(这样你就知道你所看到的就是你在其他地方得到的)
转到设置->“首选项...”->语言菜单/选项卡设置并选中“用空格替换”
【讨论】:
我建议转到查看 > 显示符号 > 显示空白和制表符,以更好地了解缩进的外观。
【讨论】:
PEP 8 告诉我们在 Python 中使用空格而不是制表符来实现跨编辑器的兼容性和一致性:
http://www.python.org/dev/peps/pep-0008/
查看这个答案,了解如何在 Notepad++ 中将制表符更改为空格
Convert tabs to spaces in Notepad++
也许这会解决你的问题
【讨论】:
微小的更新 - 要将空格作为选项卡,您现在转到设置>>首选项>>选项卡设置并选中“用空格替换”框
【讨论】:
我是 python 新手,开始使用 Notepad++。但我遇到了和你一样的问题……缩进问题。在我前辈的建议下,我切换到了 PyCharm 社区版。我将 Notepad++ 中的代码粘贴到 PyCharm 中,它突出显示了存在缩进问题的块……问题是,一些行使用了空格,一些使用了制表符。发生这种情况是因为我正在处理的代码是从互联网上获取的。
检查此类不一致将解决问题。或者,还有更好的选择……切换到 PyCharm。它是专门为 python 编码而构建的。希望这可以帮助像我这样的人在 Notepad++ 中寻找缩进问题的解决方案
【讨论】:
为 Notepad++ 使用 Python 缩进插件: 我同时使用了 Pycharm 和 Notepad++,坦率地说——即使现在两者都安装在我的机器上,我更喜欢使用 Notepad++。因此,如果您想继续使用 Notepad++ 进行 Python 开发,您绝对应该安装“Python Indent”插件。在编写 Python 代码时,此插件会自动为您创建选项卡。该插件的唯一缺点是您必须记住在要使用它时启用它(通过转到插件 --> Python 缩进,然后单击“启用”)。
要在 Notepad++ 中安装 Python Indent 插件,只需转到“插件”-->“插件管理器”,然后单击“显示插件管理器”。然后勾选“Python Indent”并点击“Install”按钮。
此外,您应该遵循 Python 的使用指南: 不同程序之间的制表符间距可能不同,按照 PEP8(Python Enhancement Proposals Number 8 - 这是 Python 的公认样式和使用指南)的建议,您应该使用空格键来缩进。在此处查看有关间距的 PEP8 页面:https://www.python.org/dev/peps/pep-0008/#tabs-or-spaces
祝你好运!
【讨论】: