00.由于python编程中的一种常见任务,Python最终产生了一种新的表达式——列表解析,它甚至比我们前面学习的工具更灵活。简而言之,列表解析把任一一个表达式而不是一个函数应用于一个迭代对象中的元素。

01.列表解析在一个序列的值上应用一个任一表达式,将其结果收集到一个新的列表中并返回。

02.实现代码的精简于代码的可读性相比,就没有那么重要了。

03.Python3.0中的map和列表解析的最大区别式:map式一个迭代器,根据需求产生结果:为了同样地实现内存节省,列表解析必须编码为生成器表达式。

04.生成器函数和常规函数一样,并且,实际上也是用常规的def语句编写的。
状态挂起:和返回一个值并退出的常规函数不同,生成器函数自动在生成值得时候挂起并继续函数得执行。由于生成器函数在挂起时保存得状态包含他们得整个本地作用域,当函数恢复时,他们得本地变量保持了信息并使器可用。

05.生成器函数和常规函数之间得主要得代码不同指出在于,生成器yields一个值,而不是返回一个值。yield语句挂起该函数并向调用者发送回一个值,但是,保留足够的状态以使得函数能够从它离开的地方继续。

06.生成器函数协议中增加了一个send的方法。send方法生成一系列结果的下一个元素,这一点就像__next__方法一样,但使它也提供了一种调用者于生成器之间进行通信的方法,从而能够影响它的操作。

07.集合解析和字典解析:
*对于集合,新的常量形式{1,3,2}等同于set([1,3,2]),并且新的集合解析语法{f(x) for x in S if P(x)}就像使生成器表达式set(f(x) for x in S if P(x)),其中f(x)是一个任意的表达式
*对于字典,新的字典解析语法{key: val for (key, val) in zip(keys, vals)}像dict(zip(keys, vals)形式一样工作,并且{x:f(x) for x in items}像生成器表达式dict((x, f(x)) for x in items)一样工作。

08.和列表解析一样,集合解析和字典解析也可以在任何类型的可迭代对象上迭代——列表、字符串、文件、范围以及支持迭代协议的任何其他类型。

09.

转载于:https://www.cnblogs.com/aixiaoxiaoyu/p/11215674.html

python学习手册笔记——20.迭代和解析相关推荐

  1. 语句与语法笔记:学会python中_doc_和pydoc——python学习手册笔记之3

    标题## 语句与语法:学会python中的_doc_和pydoc--python学习手册笔记之3 光看书不练习很难学好python,光看书不做点学习笔记,恐怕连书本的东西也是半知半解,不知所云.这手册 ...

  2. python数值类型不包含复数_[python学习手册-笔记]003.数值类型

    003.数值类型 ❝ 本系列文章是我个人学习<python学习手册(第五版)>的学习笔记,其中大部分内容为该书的总结和个人理解,小部分内容为相关知识点的扩展. 非商业用途转载请注明作者和出 ...

  3. python学习手册笔记——22.模块代码编写基础

    00.以.py位后缀名进行保存,任何此类文件都会被自动认为Python模块.在模块顶层指定的所有变量名都会变成器属性(宇模块对象结合的变量名),并且可以导出工客户端来使用. 01.一个文件名就是一个模 ...

  4. 《Python学习手册》读书笔记

    原文地址为: <Python学习手册>读书笔记 之前为了编写一个svm分词的程序而简单学了下Python,觉得Python很好用,想深入并系统学习一下,了解一些机制,因此开始阅读<P ...

  5. Python学习手册(第4版)学习笔记

    Python学习手册(第4版)是学习Python比较好的教程. (具体教程网上去搜,很多!) 由于看的比较快,很多知识记得不是很牢. 记笔记如下,便于一会按内容翻看.(页码是PDF文件的页码,不是书的 ...

  6. python官方手册笔记_Python学习手册笔记

    Python学习手册(原书第4版)Mark Lutz 著 第一部分 使用入门 >> orthogonal >> 交互提示模式下编写代码 >> "%&quo ...

  7. python学习手册条件-Python学习手册(第4版)pdf

    Python学习手册(第4版) 内容简介 <Python学习手册(第4版)>学习Python的主要内建对象类型:数字.列表和字典.使用Python语句创建和处理对象,并且学习Python的 ...

  8. python学习手册中文版免费下载-Python学习手册

    Python学习手册第4 版将帮助你使用Python快速实现这一点,不管你是编程新手还是Python初学者.本书是易于掌握和自学的教程,根据作者Python专家Mark Lutz的著名培训课程编写而成 ...

  9. python学习手册中文版免费下载-Python学习手册 第三版

    <Python学习手册(第3版)>讲述了:Python可移植.功能强大.易于使用,是编写独立应用程序和脚本应用程序的理想选择.无论你是刚接触编程或者刚接触Python,通过学习<Py ...

最新文章

  1. 淮海工学院软件测试技术实验三功能测试,软件工程-实验3软件测试技术实验(7页)-原创力文档...
  2. app制作流程步骤_企业画册设计流程总结 告诉你画册制作步骤
  3. 【剑指offer】反转链表,C++实现(链表)
  4. 【AI】人工智能深度学习入门路线
  5. 鸟叔linux私房菜基础篇简体,鸟叔的Linux私房菜基础篇-学习笔记(一)
  6. iOS音频播放 (二):AudioSession 转
  7. Train Problem II(卡特兰数 组合数学)
  8. Android ViewModel组件详解
  9. python问卷星微信登录_Python+Selenium自动刷问卷星问卷
  10. 5分钟带你了解Prosody XMPP Server
  11. JPA学习(基于hibernate)
  12. 【滤波专题-第1篇】数字滤波器快速入门——FIR有限冲激响应滤波讲解
  13. linux getcwd 头文件,linux – rsync:getcwd():没有这样的文件或目录(2)
  14. selenium下对指定元素进行截图
  15. (字符串操作)关于一个字符串加空格。
  16. 大三使用Turtle库画太极八卦图
  17. Flink系列-背压(反压)
  18. ABAP AMDP数据库存储过程(数据源)
  19. jQuery 选择器(checked)详解
  20. 海康:找不到HCNetSDK.dll

热门文章

  1. 各浏览器驱动下载地址
  2. 10-GLBP Weighting //2.1.5(GNS3版本,后面都是如此注明)
  3. js 阻断网页选中和右键
  4. 删除Mac 系统中多出得MobileBackups 文件夹
  5. EDM营销中HTML邮件设计的技巧
  6. 我也来谈谈时间管理方式及工具
  7. 用silverlight做动画-相机
  8. 如何把一个程序中 Edit 中的文本赋给另一个程序的 Edit ? - 回复 Disk_ 的问题
  9. 编程链接[2009-8-26更新]
  10. FPGA硬件构成详解