zoukankan      html  css  js  c++  java
  • python之路---11 第一类对象 函数名 闭包 迭代器

    二十九.

      1.函数名的运用

         ①函数名是⼀个变量, 但它是⼀个特殊的变量, 与括号配合可以执⾏函数的变量

       ②函数名是一个内存地址

         ③ 函数名可以赋值给其他变量

       

            ④函数名可以当做容器类的元素

      

          ⑤函数名可以当做函数的参数

          ⑥函数名可以作为函数的返回值

       2.闭包

      闭包就是内层函数, 对外层函数(非全局)的变量的引⽤.

      

    标准的闭包

        ①优点:1).可以保护变量不受侵害

         2),保持一个变量常驻内存

      ②    .__closure__    查看是否是闭包

                      返回 None  就不是闭包

           返回一个地址  是闭包

      ③   在外部调用内部

       1).单层

         2).多层

      

      3.迭代器

         1.一个数据类型中包含了__iter__函数表示这个数据是可迭代的

        dir(数据): 返回这个数据可以执行的所有操作

      

        2.判断迭代器和可迭代对象的方案(野路子)

        __iter__                    Iterable 可迭代的(str, list, tuple, dict, set)

        __iter__   __next__   Iterator 迭代器

      3.判断迭代器和可迭代对象的方案(官方)

        借助两个模块  from collections import Iterable, Iterator

        isinstance(对象, Iterable) 是否是可迭代的

        isinstance(对象, Iterator) 是否是迭代器

        4.模拟for 循环

      

        5.特征:

        1. 省内存(生成器)
        2. 惰性机制
        3. 只能向前. 不能后退

        作用:统一了各种数据类型的遍历

  • 相关阅读:
    html5 表單元素
    html5 表單輸入類型
    html5 服務器發送事件
    html5 web workers
    html5應用緩存
    html5 sessionStorage VS loaclStorage
    html5地理定位
    html5 画布和SVG的差别
    html5 SVG
    SQL-22 统计各个部门对应员工涨幅的次数总和,给出部门编码dept_no、部门名称dept_name以及次数sum
  • 原文地址:https://www.cnblogs.com/amirky/p/10211548.html
Copyright © 2011-2022 走看看