python中lambda函数
lambda是Python预留的关键字
lambda函数的特性:
1.lambda函数是匿名的:所谓匿名函数,通俗地说就是没有名字的函数。lambda函数没有名字。
2.lambda函数有输入和输出:输入是传入到参数列表argument_list的值,输出是根据表达式expression计算得到的值。
3.lambda函数一般功能简单:单行expression决定了lambda函数不可能完成复杂的逻辑,只能完成非常简单的功能。由于其实现的功能一目了然,甚至不需要专门的名字来说明。
下面是一些lambda函数示例:
lambda x, y: x*y;函数输入是x和y,输出是它们的积x*y
lambda:None;函数没有输入参数,输出是None
lambda *args: sum(args); 输入是任意个数的参数,输出是它们的和(隐性要求是输入参数必须能够进行加法运算)
lambda **kwargs: 1;输入是任意键值对参数,输出是1
#lambda表达式使用 # 定义一个函数名来使用 test=lambda x,y:x+y print(test(1, 2)) #3 #将函数作为一个参数进行传递 def cal(a,b,fn): return fn(a,b) x1 =cal(5,7,lambda x,y:x+y) x2 =cal(5,3,lambda x,y:x-y) x3=cal(4,2,lambda x,y:x/y) x4=cal(4,3,lambda x,y:x*y) print(x1) print(x2) print(x3) print(x4)
lambda函数在appium和selenium中的应用
元素出现
WebDriverWait(driver,8).until(lambda x:x.find_element_by_id(''))
元素消失
WebDriverWait(driver,8).until_not(lambda x:x.find_element_by_id(''))