【发布时间】:2014-06-18 09:26:25
【问题描述】:
使用 4 个空格的制表符宽度已成为编程的主要选择。那么为什么 Python 不将制表符视为 4 个空格而不是 8 个呢?
此设计决策是否有(技术、历史或其他)原因?感觉这样可以让开发人员免于为不一致的缩进而苦苦挣扎。
【问题讨论】:
-
这就是为什么你不应该混合制表符和空格。你不需要知道这一点。
-
旧的“tab = 8 个空格”来自机械打字机的世界。当您按下 TAB 键时,它们实际上是“硬连线”在每 8 个位置停止。然后是可变制表位(更现代的机器 - 从大约 1950 年代开始......)。但旧值显然停留在某些地方。见superuser.com/a/355868/196531
-
@SLaks 是的,我们不应该将两者混合使用,因为 Python 标准将制表符视为非常多的空格。
-
PEP8 建议您使用空格而不是制表符应该可以使开发人员免于为不一致的缩进而苦苦挣扎;-)。如果您在编写代码时遇到关于制表符/空格的问题,我会总是使用
python -t,甚至可能使用python -tt -
@Floris 哈哈,我其实是从这个问题来的。 :-) 认为大多数程序员如何看待选项卡与 Python 如何解释它们之间的区别是根本问题。
标签: python tabs indentation