zoukankan      html  css  js  c++  java
  • Python-----内置函数补充

    一,内置函数补充

    1. zip():拉链方法,用于将可迭代的对象作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组组成的内容(迭代器),如果个个可迭代对象的元素个数不一致,则按照长度最短的返回

      lst1 = [1,2,3]
      lst2 = ['a','b','c','d']
      lst3 = (11,12,13,14,15
      fol el in zip(lst1, lst2, lst3):
      	print(el)
      # (1, 'a', '11')
      # (2, 'b', '12')
      # (3, 'c', '13')
      
    2. sorted():排序

      l1 = [7, 4, 1, 6,]
      print(sorted(l1)) # 形成了新的列表
      # 加key
      lst = [
          {'name': 'xiaohong', 'age': 73},
          {'name': 'xiaoming', 'age': 35},
          {'name': 'xiaoli', 'age': 25},
      ]
      print(sorted(lst, key=lambda x: x['age'])) # 按照年龄排序
      print(sorted(lst, key=lambda x: x['age'], reverse=True)) # 第三个参数,逆序
      
    3. filter(): 过滤,相当于生成器表达式的筛选模式,返回一个迭代器

      l1 = [56, 67, 12, 34, 78, 90]
      print([i for i in l1 if i > 60])  # [67, 78, 90]
      print(list(filter(lambda x: x > 60, l1))) # [67, 78, 90]
      
    4. map():相当于生成器表达式的循环模式

      l1 = [56, 67, 12, 34, 78, 90]
      print([i**2 for i in l1])
      print(list(map(lambda x: x**2, l1))
      
    5. reduce():python 3从内置函数剔除了,放到了模块中

      from functools import reduce
      print(reduce(lambda x, y: x + y, [1, 2, 3, 4, 5])) # 15
      '''
      第一次: x,y 1,2 求和 3  记录到内存
      第二次: x,y 3,3 求和 6  记录到内齿
      第三次: x,y 6,4 求和 10  记录到内齿
      第四次: x,y 10,5 求和 15  返回
      '''
      

    二,闭包,考点,难点

    1. 闭包形成的条件:
      • 闭包存在于嵌套函数
      • 内层函数对外层函数的非全局变量进行了引用(修改),产生了自由变量,这个自由变量不会随着函数运行结束而消失,保证了数据的安全
      • 函数名逐层返回,直至返回到最外层(参考)
    2. 闭包的应用:
      • 保证数据的安全
      • 装饰器的本质
  • 相关阅读:
    【Selenium-WebDriver问题点】chromeDriver和chrome浏览器版本之间的兼容性问题
    【Linux】【Jmeter】配置Jmeter服务器和运行Jmeter
    【Linux】【JDK】常用命令使用集和裸机配置JDK步骤。
    【Linux】使用ZStack私有云创建本地Linux服务器
    js基本数据类型和typeof
    Javascript 面向对象编程
    css3作3D旋转视频展示
    css3中的border-radius
    css3中做3D导航栏
    css3动画学习笔记
  • 原文地址:https://www.cnblogs.com/hql1117/p/11066560.html
Copyright © 2011-2022 走看看