重构Python代码
有没有人能给出一些建议,把下面的代码重构成1-2行,这样它就简洁易读了重构Python代码,python,python-3.x,refactoring,Python,Python 3.x,Refactoring,有没有人能给出一些建议,把下面的代码重构成1-2行,这样它就简洁易读了 def func(a, b): c = [] if a: c.append(a) if b: c.append(b) return c 我尝试了以下几点: def func(a, b): return [a*(a is not None), b*(b is not None)] 如果a或b是一本词典等,它就不起作用了。为什么?简洁并不意味着清晰。你被
def func(a, b):
c = []
if a:
c.append(a)
if b:
c.append(b)
return c
我尝试了以下几点:
def func(a, b):
return [a*(a is not None), b*(b is not None)]
如果
a
或b
是一本词典等,它就不起作用了。为什么?简洁并不意味着清晰。你被否决是因为你没有表现出你为此付出的努力。@RushyPanchal谢谢,我同意。我只是好奇,如果我在这里做的很详细,有人有更简洁易读的解决方案
def func(a, b):
return [x for x in [a, b] if x]