Python 2.7 在Python中查找列表中的max元素

Python 2.7 在Python中查找列表中的max元素,python-2.7,python-3.x,Python 2.7,Python 3.x,我有一个列表,定义为 L=[45,56,98,75,90,12,64] 我还有一个清单如下 M=[True,True,False,True,False,True,True] 现在我想从列表L中找到max元素,它在列表M中的对应条目为True。换句话说,我想得到L的最大值为75,因为98和90在列表M中被标记为False 如何使用lambda表达式在Python中编写此代码?最简单的方法可能是 max([L[i]表示范围(0,len(L))内的i,如果M[i]]) 可以将lambda表达式定义

我有一个列表,定义为

L=[45,56,98,75,90,12,64]
我还有一个清单如下

M=[True,True,False,True,False,True,True]
现在我想从列表L中找到max元素,它在列表M中的对应条目为True。换句话说,我想得到L的最大值为75,因为98和90在列表M中被标记为False


如何使用lambda表达式在Python中编写此代码?

最简单的方法可能是
max([L[i]表示范围(0,len(L))内的i,如果M[i]])

可以将lambda表达式定义为

g=lambda L,M:max([L[i]表示范围(0,len(L))内的i,如果M[i]])

然后

print(g(L,M))
会给你75分