如何忽略Python中多输出函数的输出?

时间:2013-03-24 19:49:17

标签: python function output

假设我有一个功能:

def f():
  ...
  ...
  ...
  return a,b,c

我想在函数的输出中只得到b。我必须使用哪个作业?

感谢。

3 个答案:

答案 0 :(得分:24)

您可以将返回的元组解压缩为一些虚拟变量:

_, keep_this, _ = f()

它不一定是_,只是显而易见的东西。

(不要在交互式解释器中使用_作为虚拟名称,它用于保存最后的结果。)

或者,索引返回的元组:

keep_this = f()[1]

答案 1 :(得分:3)

def f():
    return 1,2,3

此处,f()会返回一个元组(1,2,3),因此您可以执行以下操作:

a = f()[0]
print a
1

a = f()[1]
print a
2

a = f()[2]
print a
3

答案 2 :(得分:1)

您正在使用return a,b,c行创建一个tuple,然后从该函数返回它。因此,您可以使用元组解构来仅从结果中获取所需的值。例如:

def f(x):
    return x, x + 1, x + 2
_, b, _ = f(0)
print(b) # prints "1"