参见英文答案 >
Python style: multiple-line conditions in IFs 27个答案 当缩进很长如果条件,你通常做这样的事情(实际上,PyDev缩进像这样):
if (collResv.repeatability is None or
collResv.somethingElse):
collResv.rejected = True
collResv.rejectCompletely()
然而,这使由if语句启动的块在与if条件的最后部分相同的缩进级别,这使得它非常难看/难以阅读,我认为,因为你不立即看到块开始在哪里。
我想到的一些其他样式:
if (collResv.repeatability is None or
collResv.somethingElse):
collResv.rejected = True
collResv.rejectCompletely()
这看起来很不一致,因为第二行缩进比第一行缩得多,但它是可读的。
if (collResv.repeatability is None or
collResv.somethingElse):
collResv.rejected = True
collResv.rejectCompletely()
这也比第一个示例更可读,但是缩进不是4的倍数,除此之外它看起来错误,因为第二行比第一行中的条件的开始具有更少的缩进。
所以,我的主要问题是:有没有建议的缩进样式的情况下,不需要过长的线(即单线条件)?
如果不是,你喜欢什么样的情况下?