昨日回顾

  • 生成器:生成器就是迭代器,生成器是自己用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】372. Super Pow 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 题目地址: https://leetcode.com/problems/super-po ...

  2. Codeforces 888E:Maximum Subsequence(枚举,二分)

    You are given an array a consisting of n integers, and additionally an integer m. You have to choose ...

  3. Laravel 使用 maatwebsite/excel 时长数字出现科学计数法的解决办法

    在使用 maatwebsite/excel 包导出Excel的时候,有的单元格里会存放手机号等一大串的数字,这一串数字会被Excel软件处理为科学计数法,在后续处理数据的时候会产生不小的麻烦,一个个去 ...

  4. FreeSql.Provider.SqliteCore如何加密

    FreeSql.Provider.SqliteCore 是FreeSql基于微软提供的最新的Microsoft.Data.Sqlite.Core驱动的实现. 支持的版本 .NETStandard2.0 ...

  5. [Box] Robust Training and Initialization of Deep Neural Networks: An Adaptive Basis Viewpoint

    目录 概 主要内容 LSGD Box 初始化 Box for Resnet 代码 Cyr E C, Gulian M, Patel R G, et al. Robust Training and In ...

  6. 解决Java保存到数据库中文乱码问题,加useUnicode=true&characterEncoding=UTF-8

    Java保存到数据库中文乱码, 解决方法如下: 我们在连接MySQL数据库的时候一般都会在url后面添加useUnicode=true&characterEncoding=UTF-8,但是问什 ...

  7. MyBatis练习——使用MyBatis查询所有职员信息

    实现要求: 使用MyBatis查询所有职员信息 create table employee( id int not null auto_increment, name varchar(255) not ...

  8. MySQL高级查询与编程笔记 • 【目录】

    章节 内容 实践练习 MySQL高级查询与编程作业目录(作业笔记) 第1章 MySQL高级查询与编程笔记 • [第1章 数据库设计原理与实战] 第2章 MySQL高级查询与编程笔记 • [第2章 数据 ...

  9. Java初学者作业——编写JAVA程序,在控制台中输入六位员工的姓名,通过随机点名方式,输出当选组长的员工姓名。

    返回本章节 返回作业目录 需求说明: 编写JAVA程序,在控制台中输入六位员工的姓名,通过随机点名方式,输出当选组长的员工姓名. 实现思路: (1)定义字符串类型的数组names,长度为6,用于存储六 ...

  10. 开源社区合入patch的步骤

    以Ranger项目为例,说明开源社区合入patch的详细步骤. 1.reviews页面下载patch 进入到review页面:https://reviews.apache.org/r/67919/ 点 ...