美文网首页
python 迭代器 闭包

python 迭代器 闭包

作者: 中二死军宅 | 来源:发表于2018-10-10 22:11 被阅读0次

迭代器

迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
可迭代对象

迭代器提供了一个统一的访问集合的接口。只要是实现了iter()或getitem()方法的对象,就可以使用迭代器进行访问。
序列:字符串、列表、元组
非序列:字典、文件
自定义类:用户自定义的类实现了iter()或getitem()方法的对象
创建迭代器对象

使用内建的工厂函数iter(iterable)可以获取迭代器对象:
语法:
iter(collection) -> iterator
iter(callable,sentinel) -> iterator
1 使用内置工厂函数生成迭代器
2 >>> L1 = [1,2,3,4,5,6]
3 >>> I2 = iter(L1)
4 >>> print I2
5 <listiterator object at 0x7fe4fd0ef610>
6 >>> I2.next()
7 1
8 >>> I2.next()
9 2
10 >>> I2.next()
11 3
闭包

闭包是函数式编程的一个重要的语法结构,函数式编程是一种编程范式 (而面向过程编程和面向对象编程也都是编程范式)。在面向过程编程中,我们见到过函数(function);在面向对象编程中,我们见过对象(object)。函数和对象的根本目的是以某种逻辑方式组织代码,并提高代码的可重复使用性(reusability)。闭包也是一种组织代码的结构,它同样提高了代码的可重复使用性。
  不同编程语言实现闭包的方式是不同的,python中闭包从表现形式上看,如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包(closure)。
举个例子:

def outer(x):
def inner(y):
return x + y
return inner

相关文章

  • python 迭代器 闭包

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

  • python 迭代器 闭包

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

  • python——迭代器,闭包

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

  • python 迭代器 闭包

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

  • 15.迭代器、生成器、装饰器

    一、实验目的 迭代器 生成器 生成器表达式 闭包 装饰器 二、知识要点 1.迭代器 迭代是Python最强大的功能...

  • Lua语言学习教程

    lua闭包 函数尾调用 迭代器

  • 5、迭代器实现

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

  • day2-python3函数

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

  • 闭包与迭代器

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

  • 跟诸子学游戏 Lua基础

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

网友评论

      本文标题:python 迭代器 闭包

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