昨日回顾

  • 生成器:生成器就是迭代器,生成器是自己用python代码构建的

      1. 生成器函数
      2. 生成器表达式
      3. python内部提供的
    • 如何判断函数和生成器函数
      • yield
      • yield return
    • 吃包子的区别。
    • yield from将一个可迭代对象,变成一个生成器。
    • 列表推导式、生成器表达式。
      • 循环模式[变量(加工后的变量)for 变量 initerable]
      • 筛选模式[变量(加工后的变量)for 变量 initerable if..]
    • 内置函数。

今日内容

  • 如何学习?

    • 一定要预习预习
    • 分配比例
  • 匿名函数lambda

    • #匿名函数:一句话函数,比较简单的函数。
      
      #构建普通函数
      def func(a,b):
      return a+b
      #构建匿名函数
      lambda a,b:a+b
      #关键字 形参:返回值(可赋给一个变量)
      • 多复杂都一行
      • 一般结合内置函数用
  • 内置函数II

  • 闭包:封闭的东西、保证数据安全。

    • 全局变量万一失误被改变,数据不安全

    • 为了数据安全,不能设定为全局变量

    • 但放在局部,每次又会被清空

    • 方案:闭包

      • #封闭的东西:保证数据的安全。
        def make_averager():
        l1=[]
        def averager(new_value):
        l1.append(new_value)
        total=sum(l1)
        return total/len(l1)
        return averager
        avg=make_averager()
        print(avg(100000))
        print(avg(110000))
        print(avg(120000))
        print(avg(90000))

        闭包只能存在嵌套函数中,内层函数对外层函数非全局变量引用,这个变量被称为自由变量,这个变量会和内层函数产生绑定关系,而且在内存中不会消失

        • 闭包一定有自由变量

          #代码判断闭包,有无自由变量
          print(avg.__code__.co_freevars) #('l1',)

今日总结

  1. 匿名函数lambda
  2. 内置函数II
  3. 闭包

明日学习

装饰器

代码总行数1887+64=1951行

python13day的更多相关文章

随机推荐

  1. 【LeetCode】785. Is Graph Bipartite? 解题报告(Python)

    [LeetCode]785. Is Graph Bipartite? 解题报告(Python) 作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu. ...

  2. python学习第六天:python基础(dict、set)

    dict dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度 创建&取值 为什么dict查找速度这么快? 因为 ...

  3. Go语言核心36讲(新年彩蛋)--学习笔记

    新年彩蛋 | 完整版思考题答案 基础概念篇 Go 语言在多个工作区中查找依赖包的时候是以怎样的顺序进行的? 答:你设置的环境变量GOPATH的值决定了这个顺序.如果你在GOPATH中设置了多个工作区, ...

  4. Java基础(八)——IO流1_字节流、字符流

    一.概述 1.介绍 I/O是 Input/Output 的缩写,IO流用来处理设备之间的数据传输,如读/写文件,网络通讯等.Java对数据的操作是通过流的方式进行.java.io 包下提供了各种&qu ...

  5. Redis -使用 Bitmap

    redis数据类型 String.Set.Zset.List.hash       Bitmap . 四种统计类型: 二值状态统计: 聚合统计: 排序统计: 基数统计 二值状态统计: 就是集合中的元素 ...

  6. 本地修改配置hosts文件解决Github加载慢问题

    本地修改配置hosts文件解决Github加载慢问题 手动方式 hosts 文件在每个系统的位置不一,详情如下: Windows 系统:C:\Windows\System32\drivers\etc\ ...

  7. Debug解决问题方法论

    发现问题怎么办,如何处理, 所谓的Debug的一般流程是什么, 下面是我对此的一些思考总结, 后面还会继续完善补充. 1.处理思路总纲 发现问题 查看日志 没有日志,去找日志 找不到日志,继续找,有些 ...

  8. Go数组遍历与排序

    遍历数组 Go遍历数组有两种方式 1.按照数组下标进行遍历 2.用range遍历 package main import ( "fmt" ) func main() { // 声明 ...

  9. BootStrap 是什么东西?

    Bootstrap Bootstrap 能很快速搭建一整套页面.是最受欢迎的 HTML.CSS 和 JS 框架,用于开发响应式布局.移动设备优先的 WEB 项目.所有设备都可以适配.所有项目都适用.1 ...

  10. sqlmap之--os-shell命令执行原理

    最近也是在看sqlmap,感觉--os-shell这个命令确实很厉害,但我并不知道它的原理,所以来研究一下 环境 环境就是我本地搭的一个有sql注入漏洞的一个小demo 演示 这是我们的demo环境 ...