了解Lambda函数的工作原理

时间:2016-11-06 16:56:41

标签: python

帮助我理解Lambda函数,我检查了很多代码,但我仍然无法理解它。也许用一个简单的例子,提前谢谢。

1 个答案:

答案 0 :(得分:2)

假设你想在列表中加上平方值,foo = [1,2,3,4,5]

private void btnEqualsActionPerformed(java.awt.event.ActionEvent evt) {                                          
        String sBuffer = "";

        switch (mathOperator) {
            case '+':
                dResult = dTotal1 + dObtainer;
                break;
            case '-':
                dResult = dTotal1 - dObtainer;
                break;
            case '/':
                dResult = dTotal1 / dObtainer;
                break;
            case '*':
                dResult = dTotal1 * dObtainer;
                break;
            case '^':
                dResult = Math.pow(dTotal1, dObtainer);
                break;
            case '(':
                sBuffer =  "(";
                //dResult = dObtainer;
                break;
        }

        mathOperator = '\0';
        dTotal1 = 0;
        dObtainer = 0;

        DecimalFormat df = new DecimalFormat("#.########");
        if(!"(".equals(sBuffer))
                sBuffer = df.format(dResult);
        if(!")".equals(sBuffer))
                sBuffer = df.format(dResult);
        sBuffer = sBuffer.replace(".0", "");
        txtDisplay.setText(sBuffer);

        bFinish = true;
    }

您可以使用lambda并编写

for i in range(len(a)):
    a[i] = a[i] * a[i] 

如果你只想要被3整除的元素,那么

map(lambda x: x * x, foo)

基本上它可以帮助你避免编写for循环或者更好地以有效的方式编写它。