python中pu是什么_python学习之深入
一、迭代器和生成器
1、迭代器
迭代器是访问集合元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退。另外,迭代器的一大优点是不要求事先准备好整个迭代过程中所有的元素。迭代器仅仅在迭代到某个元素时才计算该元素,而在这之前或之后,元素可以不存在或者被销毁。这个特点使得它特别适合用于遍历一些巨大的或是无限的集合,比如几个G的文件
特点:
访问者不需要关心迭代器内部的结构,仅需通过next()方法不断去取下一个内容
不能随机访问集合中的某个值 ,只能从头到尾依次访问
访问到一半时不能往回退
便于循环比较大的数据集合,节省内存
>>> a = iter([1,2,3,4,5])
>>> a
>>> a.__next__()
1
>>> a.__next__()
2
>>> a.__next__()
3
>>> a.__next__()
4
>>> a.__next__()
5
>>> a.__next__()
Traceback (most recent call last):
File "", line 1, in
StopIteration
2、生成器
一个函数调用时返回一个迭代器,那这个函数就叫做生成器(generator)&#x
python中pu是什么_python学习之深入相关推荐
- python中的文件处理_python学习——python中的文件处理
python对文件的处理. python对文件的处理的两个内建函数: open().file(),这个两函数提供了初始化输入\输出(I\O)操作的通用接口.两函数的功能相同. 基本用法: file_o ...
- python中while的用法_Python学习笔记之While循环用法分析
本文实例讲述了Python学习笔记之While循环用法.分享给大家供大家参考,具体如下: 前面一篇<Python学习笔记之For循环用法>详细介绍了Python for循环,这里再来讲述一 ...
- python中sn的意思_python学习笔记
学习资料:<简明 Python 教程.pdf>Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程. 特点:1.简单 2.易学 3.开源, ...
- python中while not循环_Python学习-while循环逻辑运算符
一.while循环,continue.break语句在while循环中的使用 1.while循环语句: while 条件: 代码块 执行过程:判断条件是否为真,如果为真,执行代码块,继续下次循环,继续 ...
- python中多维数组_python学习笔记-多维数组
Python中初始化一个5 x 3每项为0的数组,最好方法是: multilist = [[0 for col in range(5)] for row in range(3)] 我们知道,为了初始化 ...
- python中4j什么意思_Python学习:4.数据类型以及运算符详解
运算符 一.算数运算: 二.比较运算: 三.赋值运算 四.逻辑运算 五.成员运算 基本数据类型 一.Number(数字) Python3中支持int.float.bool.complex. 使用内置的 ...
- python中pass的用法_python学习之getpass模块使用
我们登入linux时,输入密码是什么都不显示的,在python中也可以这样做,那就是getpass模块(在pycharm中无法使用) getpass模块中包含几个比较实用的功能: 1.getpass ...
- python中weekid什么意思_Python学习week4-dict字典
1.字典的定义与初始化 1.1.python字典的特点: key-value键值对的数据集合: 可变的,无序的,key去重: key必须为可hash数据类型,value可以为任意数据类型: 1.2.定 ...
- python中if语句使用_Python学习笔记之if语句的使用示例
前言 条件语句在实际开发中我们已经使用过几次了,在这里我们需要再次隆重的来介绍一下它,下面话不多说了,来一起看看详细的介绍吧. if语句 顾名思义,该语句为判断语句,先来一个简单的示例 cars=[' ...
最新文章
- 手写汉字笔迹识别模型汇总
- 2009年9月三级网络技术51CTO版考前压轴试题
- Python 技术篇-百度语音识别API接口调用演示
- ubuntu开启客户端nfs服务_linux系统文件服务
- 计算机ip地址无法修改密码,手提电脑怎么修改无线网络的IP地址|无线网络怎么修改密码...
- scrapy异步写入mysql_scrapy之异步写入数据库
- Zabbix添加Windows server 2012
- HTML期末大作业~海贼王大学生HTML网页制作10个页面作品(HTML+CSS+JavaScript)
- gie拉取Can‘t update master has no tracked branch
- mysql如何更新视图,MySQL更新视图
- 互联网骨干网及国际通用结算介绍
- ppd文件下载 linux,Linux系统R230,R270,R330,L380打印机驱动下载爱普生喷墨打印机PPD文件...
- 实例三十八:银行卡问题
- 大数据实时处理第三周课
- 支付宝移动支付开发错误集锦
- 硬件科普系列之显示篇——LCD与OLED知多少
- Ubuntu下安装RabbbitVCS(图形化svn管理工具)-- Ubuntu也有TortoiseSVN
- 关于java实体类和mysql数据库json格式的对应问题,使用mybatis-plus
- 在Ubuntu 14.04下安装Pepper Flash
- office 2010安装