Python中制表符无法正常工作

4 投票
3 回答
9307 浏览
提问于 2025-04-15 20:00

我一直在用NotePAD++来编辑Python脚本。最近我下载了PyDEV这个IDE(集成开发环境,适用于Eclipse)。

问题是,我在NotePad++写脚本的时候用的是“TAB”键来缩进,但现在在PyDEV里打开这些脚本时,每次我想写新的一行,PyDEV却插入了空格,而不是“TAB”。(即使我按下“TAB”键,Eclipse也会插入4个空格,而不是一个TAB)。

这就导致了缩进错误。

有没有办法解决这个问题呢?

谢谢!

3 个回答

3

先不讨论用制表符还是空格的问题。

要解决这个问题,你需要在Eclipse的设置里选择“切换强制使用制表符”,这样它就会用制表符,而不是默认的空格了。

4

使用制表符(Tabs)会有问题——因为不同的人在他们的编辑器设置中可以选择不同的宽度,这样就会导致格式混乱(比如在C语言中)或者执行出错(在Python中)。所以,使用空格会更好,这样可以得到一致且合理的结果。不过,有一个问题是,有些编辑器默认还是使用制表符。

在我工作过的公司里,我们的编码规范明确规定应该始终使用空格,而不是制表符。但有时候编辑器的默认设置会让我们犯错。

在使用Eclipse和PyDev时,快速将制表符转换为空格的方法是通过菜单选项:Source⇒Convert tabs to space-tabs。

7

是的,按照这个链接 http://www.python.org/dev/peps/pep-0008/ 上的说明来做:

缩进

Use 4 spaces per indentation level.

把你所有的制表符(Tab)换成空格,并把 Notepad++ 设置成使用空格而不是制表符。

如果把 Eclipse 设置成使用制表符而不是空格,那就是走错了方向。

撰写回答