Python高阶函数sorted/filter/reduce/map

常用高阶函数

  1. sorted()

    1. sorted()函数对所有可迭代对象进行排序操作
      1. 可迭代对象包括字符串、列表、元组、字典、集合
      2. sorted和sort方法区别
    2. sorted()语法
      1. sorted(iterable, cmp=None,key=None, reverse=False)
        1. ​​​​​​​iterable  -- 可迭代对象
        2. cmp
        3. key
        4. reverse -- 排序规则。reverse=True降序,reverse=False升序(默认)
    3. 示例
      1. list = [6,5,4,3,2,1]
        
        print(sorted(list)) # 输出[1, 2, 3, 4, 5, 6]
  2. filter()

    1. filter()函数用于过滤序列。接收两个参数,第一个为函数,第二个为序列。序列中的每个元素作为参数传递给函数进行判断。然后返回True或false。最后将返回True的元素放到新列表中。
    2. 语法:filter(function, iterable)
      1. function -- 判断对象
      2. iterable -- 可迭代对象
    3. 示例
      1. list = [6, 5, 4, 3, 2, 1]
        
        def func(x: int) -> bool:
            return x > 5
        
        f = filter(func, list)
        print(tuple(f)) # 输出(6,)
        
        
        # func 也可以用lambda函数
        f_= filter(lambda x:x>5 ,list)
        
        print(tuple(f_))
  3. reduce()

    1. reduce()函数会对参数序列中元素进行累积。用传给reduce中的函数function(有两个参数)先对集合中的第1,2个元素进行操作,得到的结果再与第三个数据用function函数运算。最后得到一个结果
    2. 语法:reduce(function,iterable,initializer)
    3. 示例
      1. def add(x,y):
            return x+y
        
        sum1 = reduce(add,[1,2,3,4,5])
        
        sum2 = reduce(lambda x,y:x+y,[1,2,3,4,5])
        
        print(sum1) # 15
        print(sum2) # 15

  4. map()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值