gpt4 book ai didi

Python lambda 不接受元组参数

转载 作者:IT老高 更新时间:2023-10-28 21:50:47 26 4
gpt4 key购买 nike

我在两台 PC 上运行带有 PyDev v2.6 插件的 Eclipse SDK v3.6,Linux 和 Windows。

我想传递一个元组作为参数,例如:

foo = lambda (x,y): (y,x)
print (foo((1,2)))

这适用于 Linux 并给出正确的结果:

> (2,1)

在 Windows 上会出现错误:

foo = lambda (x,y): (y,x)
^
SyntaxError: invalid syntax

如何解决问题?

最佳答案

您可能在 Windows 上运行 Python 3.x,在 Linux 上运行 Python 2.x。 Python 3 中移除了解压元组参数的功能:见 PEP 3113 .

您可以改为手动解包元组,这适用于 Python 2.x 和 3.x:

foo = lambda xy: (xy[1],xy[0])

或者:

def foo(xy):
x,y = xy
return (y,x)

关于Python lambda 不接受元组参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11328312/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com