美文网首页
python3基础---闭包、迭代器详解

python3基础---闭包、迭代器详解

作者: HopCoder | 来源:发表于2017-09-12 13:37 被阅读0次

迭代器

  1. 可以迭代的对象
    可以直接用for循环进行迭代的对象
    一类是集合数据类型,如list、tuple、dict、set、str等
    一类是generator,包括生成器和带yield的generator function
  2. 判断是否可以迭代
from collections import Iterable
isinstance([], Iterable)

list不是迭代对象,但是可以迭代
可以使用next()函数的都是迭代对象
????
把迭代对象转换成迭代对象

a = [2,3,45,5]
b = iter(a) #转换成迭代对象
isinstance(b, Iterable)
true

闭包

1、函数引用
2、什么是闭包
在函数体里面定义了一个函数并且这个函数用到了外面的函数的变量,那么这个函数就是闭包

def test(num):
    def test_in()
        return num * 3
    #这个return test_in就是闭包
        return test_in #函数引用

3、理解

def test(a,b):
    def test_in(x):
        print(a*x + b)
    return test_in

line1 = test(1,1)
line1(0) # 结果是1
line2 = test(10,4)
line2(0) # 结果是4

问题:
line1(0) 此时值是多少呢
答案:结果是1

相关文章

  • python3基础---闭包、迭代器详解

    迭代器 可以迭代的对象可以直接用for循环进行迭代的对象一类是集合数据类型,如list、tuple、dict、se...

  • Lua语言学习教程

    lua闭包 函数尾调用 迭代器

  • day2-python3函数

    今天练习了python3的各类型函数。包括: 基本语法 高级函数 递归 生成器与迭代器 闭包与装饰器 练习题代码实...

  • 5、迭代器实现

    闭包实现迭代器 迭代函数实现迭代器 --1,调用迭代函数,(把状态变量和控制变量当做参数传递给迭代函数) 状态变...

  • python 迭代器 闭包

    迭代器 迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,...

  • python 迭代器 闭包

    迭代器 迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,...

  • python——迭代器,闭包

    迭代器 可迭代对象 可以用for循环的数据类型 判断是否可迭代 生成器一定是迭代器,可用next()的也可以迭代。...

  • python 迭代器 闭包

    迭代器 迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,...

  • 闭包与迭代器

    1. 闭包的基本使用与特性 闭包定义会为每个参数和返回值类型推导一个具体的类型,但是不能推导两次闭包能捕捉环境中的...

  • 跟诸子学游戏 Lua基础

    1:使用闭包创建迭代器 2:泛型for保存状态变量和控制变量,将状态变量传入迭代器,进行迭代,这个属于无状态迭代器...

网友评论

      本文标题:python3基础---闭包、迭代器详解

      本文链接:https://www.haomeiwen.com/subject/mmjcsxtx.html