我一直在努力改进代码的样式并确保它尽可能可读。
跳过其他人并获得回报会被视为不良做法吗?
例如:
if x == 1:
return True
return False
而不是:
if x == 1:
return True
else:
return False
答案 0 :(得分:0)
两种样式都有效,而python样式指南(PEP 8)也未指定任何一种首选项。
无论您决定使用哪种方式,都要与之保持一致。这将导致代码更易于阅读。
来自PEP 8:
[...]代码的读取频率远高于编写代码。 [...]正如PEP 20所说,"可读性计算"。
风格指南是关于一致性的。与此风格指南的一致性非常重要。项目的一致性更为重要。一个模块或函数内的一致性是最重要的。
在Programming recommendations下:
是:
def foo(x): if x >= 0: return math.sqrt(x) else: return None def bar(x): if x < 0: return None return math.sqrt(x)
答案 1 :(得分:0)
我总是在没有影响的时候直接回来。
我没有找到关于此的参考,但这是我的愿景
因为有时候你可能需要做像
这样的事情for spam in bacon:
if spam == egg:
return spam
但是如果你想避免在if
声明中返回,你将不得不这样做:
return_value = None
from spam in bacon:
if spam == egg:
return_value = spam
break
return return_value
结果完全相同&amp;执行但只添加3条不相关的行,所以我终于认为当这种情况发生时我总是使用相同的规则:直接返回。
关于for
/ if
/ return
,问题不会太深,但这不是问题。