我有一个列表和一个f返回三元组的函数。我想捕获前两个返回值,并将第三个返回值附加到 lst。我知道我可以执行以下操作:
a, b, c = f()
lst.append(c)
Run Code Online (Sandbox Code Playgroud)
但我想要一种没有无关变量“c”的方法。我知道我也可以这样做:
lst.append(f()[2])
Run Code Online (Sandbox Code Playgroud)
但我不想扔掉其他两个返回值。
有什么建议么?
编辑:我很欣赏所提供的答案,但更清楚地说,问题是找到一个简洁的台词。
除非您更改函数定义,否则您想要做的事情是不可能用“一行”(不使用分号将两个语句放在一行上)实现的。
具体来说,定义f()如下:
def f(list_to_append_to):
a = ...
b = ...
c = ...
list_to_append_to.append(c)
return a, b
Run Code Online (Sandbox Code Playgroud)
然后:
a, b = f(mylist)
Run Code Online (Sandbox Code Playgroud)