python-如何执行此函数语法?

python-如何执行此函数语法?,python,return,Python,Return,我就这样试过了。但它不起作用请使用以下命令: def swap_value(x,y): temp = x x = y y = temp return swap_value(3,4) 就‘x,y=y,x’怎么样?不需要单独的函数。您的函数不返回任何内容,因此可能需要返回一个元组,如: def swap_value(x,y): temp = x x = y y = temp return x,y Wich是一种更为冗长的方

我就这样试过了。但它不起作用

请使用以下命令:

def swap_value(x,y):    
    temp = x
    x = y
    y = temp
    return

swap_value(3,4)

就‘x,y=y,x’怎么样?不需要单独的函数。

您的函数不返回任何内容,因此可能需要返回一个元组,如:

def swap_value(x,y):
    temp = x
    x = y
    y = temp
    return x,y
Wich是一种更为冗长的方式:

def swap_value(x, y):
    temp = x
    x = y
    y = temp
    return x, y
上述方法的问题是您没有进行正确的交换,请执行以下测试:

def swap_value(x, y):
    return y, x
python中交换值的最具python风格的方式是使用简单的oneliner,这是交换值的最具python风格的方式,无需将交换包装到函数中(除非交换做了其他事情):


此功能的预期效果是什么?请澄清您的问题。你想完成什么?你没有返回任何东西?
3和
4都是常量。您应该将它们分配给变量,例如
n1
n2
,然后调用
swap\u值(n1,n2)
。但是再一次,你似乎没有返回任何东西。这与
返回y,x
是一样的,这反过来又与
x,y=y,x
是一样的-不需要函数…@PatrickArtner当然,但我的尝试是纠正OP的代码。我不知道为什么这需要一个向下的voting,因为在不需要的函数中引入了不需要的temp变量,因此产生了糟糕的pythonnesque代码——我认为这并没有真正的帮助。只要返回y,如果您真的想让函数这么做,那么x将是“修复程序”——但切换上下文的开销仍然是python的糟糕用法
x, y = 3, 4
print(swap_value(x, y))
print(x, y)
x, y = 3, 4
x, y = y, x
print(x, y)