将返回值直接附加到一组列表

Abh*_*tia 0 python python-2.7 python-3.x

我有两个列表list1和list2,我必须使用func()返回的值将结果附加到它们.

item1,item2=func()
list1.append(item1)
list2.append(item2)
Run Code Online (Sandbox Code Playgroud)

是否有可能用一个声明代替上述内容?换句话说,如何在不创建任何临时变量的情况下将返回的元组追加到两个列表中?

编辑:请比较损失的效率和原因.我无法理解.

Ste*_*sop 5

你不想这样做,但是:

map(lambda l,v: l.append(v), (list1, list2), func())
Run Code Online (Sandbox Code Playgroud)

在Python3中,您需要强制map迭代:

list(map(lambda l,v: l.append(v), (list1, list2), func()))
Run Code Online (Sandbox Code Playgroud)