2012-07-25 88 views
4

我想大多数人都认为拖尾空白不是好习惯。很多编辑会为您显示或自动删除它。隐藏空白空间最佳实践

考虑这个Python的功能作为一个简单的例子:

Whitespace Example Screenshot

额外的空格上线11和13都是错误的。我想知道的是第10行。如果控制块中的空白行不改变缩进,就会导致空白。

我使用过的大多数编辑器都会将光标保留在前一行的缩进级别,所以在没有空白符的情况下创建一个空行需要一些额外的格式。最佳做法是什么?第10行是否有空白?

回答

3

我会尽量回答你的问题坚持你的Python的例子,引用他们的风格指南。

PEP-8

类内部的方法定义由一个空行分离。

Wikipedia (blank line)

空白行通常是指含有零个字符(不包括端部的行的任何字符)的直线;虽然它也可以指任何行不包含任何可见的字符(包括只有空白的)。

如果您相信维基百科定义,您可能会问为什么零字符是首选。

对于一个很简单的,即使自动缩进在编辑器中打开,你只是填充没有很好的理由额外的字节文件。

其次,零字符空白行的正则表达式也比较简单,'^ $'通常与'^ \ s * $'类似。

正如其他答案指出的那样,在输入空格时执行方式没有区别。没有充分的理由这样做,我认为最好的做法是放弃它,并保持简单。你能想象一种情况:一个零字符的行将被视为与一些空白行不同的行吗?我不愿意用那种语言编程。放入空白似乎对我来说是巴洛克式的。

5

说到代码执行,它使得绝对零差异;我在Python中看到的最常见的做法是带有空格的练习,但我认为任何人都不能合理地说一个在客观上比另一个更好。

2

由于@PinkElephantsOnParade写道,执行没有区别。因此,这完全是个人美学偏好的问题。

我自己设置我的编辑器显示尾随空白,因为我认为尾随空白是一个坏主意。因此,您的第10行将突出显示,并始终盯着我。 没有人愿意,所以我认为第10行不应该包含空格。 (其中,巧合的是我的编辑,emacs的,怎么会自动处理这个。)

1

对每一个他自己的,而是看它的方式是:代码风格是关于人的可读性。因此,如果延长线的长度超过某个先前存在的(自我强加的)限制(例如80个字符限制),则尾随空白只是一个问题。另一方面,如果你一直在你的编辑器中显示空格,这对你来说很重要,我个人会将它保留在那里,因为它会(至少对于某些人来说)更有效率地使白色 - 空间礼物;如果您决定在某一时刻在该行添加代码,则不必添加额外的空白区域。