如果列表尚未初始化并且在一行中附加到列表,我该如何初始化列表。例如,
function example(a=None):
a = a or []
a.append(1)
return another_function(a)
如何将函数中的这两个语句合并为一个?
我正在寻找类似的东西,但这不起作用:
function example(a):
a = (a or []).append(1)
return another_function(a)
编辑:我没有在其他地方引用a
,它只是从一个函数传递给另一个函数。实际上只是值是重要的,所以如果它是具有正确值的另一个对象就可以了。我还添加了默认值None。
答案 0 :(得分:3)
def example(a):
return a + [1] if a else [1]
>>> example([1,2,3])
[1, 2, 3, 1]
>>> example([])
[1]