首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Python pep-8强烈推荐使用空格而不是制表符进行缩进?

为什么Python pep-8强烈推荐使用空格而不是制表符进行缩进?
EN

Stack Overflow用户
提问于 2008-09-23 13:20:35
回答 18查看 87.3K关注 0票数 181

我在Stack Overflow和PEP 8上看到,建议在Python程序中只使用空格进行缩进。我能理解持续缩进的必要性,我也感受到了这种痛苦。

优先选择空格有没有潜在的原因?我本以为标签页更容易使用。

EN

回答 18

Stack Overflow用户

回答已采纳

发布于 2008-09-23 15:19:27

答案已经在PEP中给出了[编辑:这段话已经在2013中被编辑掉了]。我引述如下:

最流行的缩进方式是只使用空格。

你还需要什么其他潜在的原因?

说得不那么直白:还要考虑第一段中提到的PEP的范围:

Python本文档给出了

代码的编码约定,这些代码构成了Python主发行版中的标准库。

这样做的目的是使官方python发行版中的所有代码格式一致(我希望我们能同意这是一件普遍的好事,™)。

由于单个程序员在空格和制表符之间的选择是a)确实是一个品味问题,b)很容易通过技术手段(编辑器、转换脚本等)处理,因此有一个明确的方法来结束所有讨论:选择一个。

Guido是那个选择的人。他甚至不需要给出理由,但他仍然通过参考经验数据给出了原因。

对于所有其他目的,您可以将此PEP作为建议,也可以忽略它--您的选择,或者您的团队,或者您的团队领导。

但如果我可以给你一个建议:不要混用它们;-) ed:混用制表符和空格不再是一种选择。

票数 132
EN

Stack Overflow用户

发布于 2011-02-19 08:56:16

好吧,好吧,似乎每个人都对空间有强烈的偏见。我只使用制表符。我很清楚这是为什么。

Tab实际上是一个很酷的发明,它是在 spaces之后出现的。它允许您在不按空格键数百万次或使用假制表符(产生空格)的情况下进行缩进。

我真的不明白为什么每个人都歧视标签的用法。这很像老年人歧视年轻人,因为他们选择了更新、更高效的技术,并抱怨脉冲拨号在每个手机上都有效,而不仅仅是这些花哨的新手机。“铃声拨号并不适用于所有的手机,这就是为什么它是错误的。”

您的编辑器无法正确处理制表符?好吧,得到一个现代的编辑器。也许是时候了,我们现在是在21世纪,编辑是一个高科技复杂软件的时代已经过去很久了。我们现在有许许多多的编辑器可供选择,所有这些编辑器都支持标签。此外,您还可以定义一个制表符的大小,这是您不能使用空格完成的事情。看不到选项卡吗?这是用来争论的?嗯,你也看不到空格!

我可以大胆地建议找一个更好的编辑吗?其中一个高科技的,已经发布了大约10年前,显示看不见的字符?(冷嘲热讽)

使用空格会导致更多的删除和格式化工作。这就是为什么(以及所有其他知道这一点并同意我的人)使用Python选项卡的原因。

混合使用制表符和空格是不允许的,也不会有任何争论。这是一个烂摊子,永远不会起作用。

票数 151
EN

Stack Overflow用户

发布于 2009-05-16 17:41:35

我个人不同意在制表符上使用空格。对我来说,制表符是一种文档布局字符/机制,而在代码的情况下,空格是用于内容或命令之间的描述。

我不得不同意Jim的评论,制表符并不是真正的问题,而是人们以及他们想要如何混合制表符和空格的问题。

也就是说,为了遵守约定,我强迫自己使用空格。我更看重一致性而不是个人偏好。

票数 45
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/120926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档