Skip to Content
流畅的Python(第2版)
book

流畅的Python(第2版)

by Luciano Ramalho
April 2023
Intermediate to advanced
769 pages
25h 16m
Chinese
Posts & Telecom Press
Content preview from 流畅的Python(第2版)
457
17
迭代器、生成器和经典协程
当我发现自己的程序中用到了模式,我就觉得这表明某个地方出错了。程序的形
式应该仅仅反映它所要解决的问题。代码中其他任何外加的形式都是一个信号,
(至少对我来说)表明我对问题的抽象还不够深入,也经常提醒我,自己正在手
动完成的事情,本应该写代码通过宏的扩展自动实现。
——
Paul Graham
Lisp
黑客和风险投资人
1
迭代是数据处理的基石:程序将计算应用于数据序列,从像素到核苷酸。如果数据在内存
中放不下,则需要
惰性
获取数据项,即按需一次获取一项。这就是迭代器的作用。本章说
Python
语言是如何内置
迭代器
模式的,这样就避免了自己动手去实现。
Python
,所有容器都是
可迭代对象
Python
使用可迭代对象提供的
迭代器
支持以下
操作:
for
循环;
列表、字典和集合推导式;
拆包赋值;
构造容器实例。
本章涵盖以下话题:
Python
如何使用内置函数
iter()
处理可迭代对象;
Python
中如何实现经典的迭代器模式;
1
摘自博客文章“
Revenge of the Nerds
”。这篇文章收录在
Paul Graham
个人文集《黑客与画家》中,
详见
ituring.cn/book/3019
。——编者注
458
17
如何使用生成器函数或生成器表达式代替经典的迭代器模式; ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Python高级编程(第2版)

Python高级编程(第2版)

Posts & Telecom Press, Michał Jaworski, Tarek Ziadé
Kafka权威指南(第2版)

Kafka权威指南(第2版)

Gwen Shapira, Todd Palino, Rajini Sivaram, Krit Petty
Python贝叶斯分析(第2版)

Python贝叶斯分析(第2版)

Posts & Telecom Press, Osvaldo Martin

Publisher Resources

ISBN: 9787115612366