• 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. 只能向前. 不能后退

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

  • 相关阅读:
    Picasa生成图片幻灯片页面图文教程
    Ubuntu下缓冲器溢出攻击实验(可以看看问题分析)
    redis源码笔记 aof
    redis源码笔记 bio
    redis源码笔记 slowlog
    记录一个字符数组和字符指针的不同
    redis源码笔记 rediscli.c
    redis源码笔记 redis对过期值的处理(in redis.c)
    redis源码笔记 有关LRU cache相关的代码
    redis源码笔记 initServer
  • 原文地址:https://www.cnblogs.com/amirky/p/10211548.html
Copyright © 2020-2023  润新知