小编Nik*_*hil的帖子

lambda表达式在Python中使用两个参数时出错

我是Python新手并练习基础知识.我使用lambda表达式来获取两个参数并对它们执行方形运算(例如:) var ** 2.这两个论点来自于zip(list1, list2).我正在TypeError为此而努力.我试着寻找解决方案,但没有得到任何解决方案.我甚至尝试在括号中编写lambda参数(例如lambda (v1,v2)::)但是扔了SyntaxError.

下面是python代码:

list1 = [1,2,3,4]
list2 = [5,6,7,8]
print ( list(map(lambda v1,v2: (v1**2, v2**2), list(zip(list1, list2)))) )
Run Code Online (Sandbox Code Playgroud)

错误:

TypeError                                 Traceback (most recent call last)
<ipython-input-241-e93d37efc752> in <module>()
      1 list1 = [1,2,3,4]
      2 list2 = [5,6,7,8]
----> 3 print ( list(map(lambda v1,v2: (v1**2, v2**2), list(zip(list1, list2)))) )

TypeError: <lambda>() missing 1 required positional argument: 'v2'
Run Code Online (Sandbox Code Playgroud)

python lambda python-3.6

3
推荐指数
1
解决办法
983
查看次数

标签 统计

lambda ×1

python ×1

python-3.6 ×1