zoukankan      html  css  js  c++  java
  • Python 与 C# lambda表达式比较

    Python里到lambda表达式非常简约,

    lam =lambda a: a*2
    
    --> lam(3)
    6
    

    在某些情况下确实挺好用到。但是相比C#到lambda表达式,还是不够强大(我不是在黑python,实话实说)。

    C#里的lambda表达式非常好用,只要用过到人都会觉得爱不释手。它其实就是一个匿名的函数,只要普通函数能做到事情,它都能做,但是表现得非常简约。

    form.click += (x,y) =>
    {
    y = y.split('/')[0]; x.Text = y; }

    而Python里到lambda表达式,只能有一行表达式,而不像C#一样是一个完整的函数。并且它必须返回一个值,否则就会报错。

    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
    

    执行结果

      File "/home/linh/project/python/learn/test1.py", line 3
        return lambda x,y:x.Text = y
                                 ^
    SyntaxError: invalid syntax
    

    好吧,说完我也感觉自己是在黑Python来。

  • 相关阅读:
    selenium
    python第三方模块的安装
    程序员学习网站
    python 数据较大 性能分析
    linux ~/ 和 /
    VMWare虚拟机 window文件传递
    vi命令
    os.system
    win10系统进入BIOS
    pyinstaller将python脚本生成exe
  • 原文地址:https://www.cnblogs.com/nonkicat/p/3496006.html
Copyright © 2011-2022 走看看