Python 向不同的函数返回不同的值

Python 向不同的函数返回不同的值,python,function,return,Python,Function,Return,我有一个函数,它返回2个值。现在,根据从哪个函数调用,我想返回这些值。i、 我有一个函数a,它返回值“x”和“y”,如果这个函数是从函数“B”调用的,我想返回“x”,如果它是从“C”调用的,我想返回“y”。有办法做到这一点吗?很简单。返回多个值的函数返回一个值元组。因此,在从调用函数时,可以通过索引轻松地将变量分配给返回值的第一个元素。例如,假设我有这样一个函数: def function_A(x, y): return x, y #returns a tuple of x and y

我有一个函数,它返回2个值。现在,根据从哪个函数调用,我想返回这些值。i、 我有一个函数a,它返回值“x”和“y”,如果这个函数是从函数“B”调用的,我想返回“x”,如果它是从“C”调用的,我想返回“y”。有办法做到这一点吗?

很简单。返回多个值的函数返回一个值元组。因此,在从调用函数时,可以通过索引轻松地将变量分配给返回值的第一个元素。例如,假设我有这样一个函数:

def function_A(x, y):
    return x, y #returns a tuple of x and y - (x, y)

def function_B():
    variable = function_A(2,3)[0] #The 2,3 arguments is just an example.
    # This gives you the first return value.

def function_C():
    variable = function_A(2,3)[1]
    # And this gives the second return value

到目前为止,您尝试了什么,如果没有的话,这里有一个提示:查看函数和继承您可以为您试图解释的内容添加代码吗?使用不同的参数运行函数,并使用此值返回不同的结果。或者创建不同的功能,在不同的地方运行不同的功能。函数应该总是为相同的参数返回相同的结果-无论在何处使用它。被调用的函数不知道调用它的上下文,因此您应该向它传递一个参数来控制执行。这看起来像是在试图颠覆正常的编程约定。你为什么这么做?让隐式上下文改变语句的含义,即使不是不可能,也会使程序难以推理。光阴似箭。水果像香蕉一样飞。