我希望将函数的返回值输出扩展到一组列表。

def func():
    return [-1,2],[4,1]
f=[1,2]
g=[3,4]
f,g=func() #How make it append
print f,g

#Expected Output:
[1,2,-1,2] [3,4,4,1]


对于一个列表,我可以执行f.extend(func()),但是对于多个列表呢。
创建临时变量不是首选。

最佳答案

为什么不通过函数两个参数

def func(l1 ,l2):
    return l1+[-1,2],l2+[4,1]

f = [1,2]
g = [3,4]
f,g = func(f,g)
print f,g


产生

[1, 2, -1, 2] [3, 4, 4, 1]


但是,让函数扩展列表并完全避免返回值可能会更容易

def func(l1 ,l2):
    l1.extend([-1,2])
    l2.extend([4,1])

f = [1,2]
g = [3,4]
func(f,g)
print f,g

关于python - 直接从返回的函数列表扩展列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35072311/

10-12 17:40
查看更多