Python 与 C# lambda表达式比较
Python里到lambda表达式非常简约,
1 2 3 4 | lam = lambda a: a * 2 - - > lam( 3 ) 6 |
在某些情况下确实挺好用到。但是相比C#到lambda表达式,还是不够强大(我不是在黑python,实话实说)。
C#里的lambda表达式非常好用,只要用过到人都会觉得爱不释手。它其实就是一个匿名的函数,只要普通函数能做到事情,它都能做,但是表现得非常简约。
1 2 3 4 | form.click += (x,y) => {<br> y = y.split( '/' )[0]; x.Text = y; } |
而Python里到lambda表达式,只能有一行表达式,而不像C#一样是一个完整的函数。并且它必须返回一个值,否则就会报错。
1 2 3 4 5 6 7 8 9 10 11 12 | class Form : def Click( self ): return lambda x,y:x.Text = y class Label: def Text label = Label() form = Form() form.click(label, 'name' ) print label.Text |
执行结果
1 2 3 4 | File "/home/linh/project/python/learn/test1.py" , line 3 return lambda x,y:x.Text = y ^ SyntaxError: invalid syntax |
好吧,说完我也感觉自己是在黑Python来。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?