• 4.2


    三元表达式

    def max2(x,y):

        if x > y:

           return x

        else:

           return y

    max2(10,11)

    三元表达式只用于条件成立返回一个值,条件不成立返回一个值

    def max2(x,y):

        return x if x > y else y

    max2(10,11)

    函数递归

    函数的递归调用在函数的调用过程种,又直接或间接地调用了函数本身

    直接调用

    def foo():

        print('===>')

        foo()

    foo()

    间接调用

    def bar():

        print('===>')

        foo()

    bar()

    def foo():

        print('--->')

        bar()

    foo()

    递归分为两个阶段:

    1.回溯

    注意:一定要在满足某条件结束回溯,否则就死循环

    2.递推

    总结:

    1.递归一定要有一个明确地结束条件

    2.每进入下一个递归,问题的规模都应该减少

    3.在python中没有尾递归优化

    匿名函数

    def max2(x,y):

        if x > y:

           return x

        else:

           return y

    lambda x:需要的运算方式

    函数不会单独使用

    强调 匿名的目的就是要没有名字,有名字则是无意义的

         匿名函数的参数规则,作用域关系与有名函数是一样的

         匿名函数的函数体通常是一个表达式,该表达式必须要有一个返回值

    内置函数

    dic={'egon1':3000,
    'egon2':10000,
    'egon3':1000
    }

    max(最大值)

    print(max(dic,key=lambda z:dic[z]))

    min(最小值)

    print(min(dic,key=lambda z:dic[z]))

    sorted(排序)

    print(sorted(dic,key=lambda z:dic[z]))

    map(映射)

    map(映射规则 加可迭代对象)
    name=['wxx','alex','lmm']
    res=map(lambda x:x +'SB',name)
    print(res)

    reduce(合并)

    from functools import reduce


    res=reduce(lambda x,y:x+y ,range(1,101))
    print(res)

    filter(过滤)
    age=[11,15,50,68,70]
    r=filter(lambda x: x>40,age)
    print(list(r))

















  • 相关阅读:
    Java Project和Web Project 区别
    ScannerTest-------double string
    ScannerDemo------string int
    clearfix 清除浮动的标签
    bootstrap 的布局
    <span>元素
    反省
    Django中ifequal 和ifnotequal的使用
    IndexError: list index out of range的错误原因
    python2和python3同时存在电脑时,安装包时的的命令行
  • 原文地址:https://www.cnblogs.com/yftzw/p/8695292.html
Copyright © 2020-2023  润新知