Python(十)Lambda表达式
1、lambda.py
import import测试 import time def a(x, y): return x + y print(a(10, 20)) #30 lam = lambda x, y: x + y print(lam(30, 40)) #70 #2、使用内置函数做表达式 lam = lambda x:print(x) lam(50) #50 import测试.b() #测试import import测试.c.k() #class中的k() print(time.localtime()) #time.struct_time(tm_year=2021, tm_mon=4, tm_mday=26, tm_hour=13, tm_min=12, tm_sec=59, tm_wday=0, tm_yday=116, tm_isdst=0) #3、使用自定义函数作为表达式 def b(nowtime): return time.strftime("%y-%m-%d") lam = lambda nowtime : b(nowtime) print(lam(time.localtime())) #21-04-26 #4、使用推导式作为表达式 lam = lambda x:[i for i in range(x)] print(lam(5)) #[0, 1, 2, 3, 4]
使用不定长度参数:
#6、使用不定长参数 args lam = lambda *args : [i for i in args] print(lam(4, 5, 6, 7, 8)) #[4, 5, 6, 7, 8] #7、使用不定长度参数 **kw lam = lambda **args : {v:k for k,v in args.items()} print(lam(name="张三", age=18)) #{'张三': 'name', 18: 'age'}
2、import测试.py
print("123456789") def b(): print("测试import") class c: def k(): print("class中的k()")
浙公网安备 33010602011771号