# BAD
if cluster_type == 1:
pass
# GOOD
class enum_cluster_type(object):
""""""
K8S = 1
Mesos = 2
if cluster_type == enum_cluster_type.K8S:
pass
1.2 不要预计算字面量表达式
如果某个变量是通过简单算式得到的,应该保留算式内容。不要直接使用计算后的结果。
# BAD
if delta_seconds > 950400:
return
# GOOD
if delta_seconds > 11 * 24 * 3600:
return
1.3 优先使用列表推导或内联函数
使用列表推导或内联函数能够清晰知道要生成一个列表,并且更简洁
# BAD
list_two = []
for v in list_one:
if v[0]:
new_list.append(v[1])
# GOOD one
list_two = [v[1] for v in list_one if v[0]]
# GOOD two
list_two = list(filter(lambda x: x[0], list_one))
1.4 当在非测试代码中使用 assert 时,妥善添加断言信息
>>> assert 1 == 0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AssertionError