如果只能推荐一本 Python 书,我一定 Pick 它
前段时间,我偶然看到了一条推特:
《流畅的Python》一书的作者发布了一条激动人心的消息:他正在写作第二版!
如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍之一。
如果你读过它,肯定也会认为它值得推荐;如果你没有,那请往下阅读,看我的介绍能否打动你把它列为必读书目吧~
这本书的英文名是《Fluent Python》,在 2015 年 8 月出版。两年后,国内的图灵教育出品了译本,出版时间是 2017 年 5 月,获得豆瓣 9.4 高分。(图书翻译/出版真是个漫长的过程啊)
作者 Luciano Ramalho 是个巴西人、资深的 Python 程序员/演讲者、PSF(Python软件基金会)成员。书籍的技术审校与推荐人囊括了圈内的一众大咖。
此书一出,大受圈内好评,各国出版社纷纷引进版权,目前至少已有 9 种语言版本(来数数你认识几种?):
PS:图片出自@fluentpython官推,简体中文版最薄,巧合占据C位。根据图灵教育统计,简体中文版销量超过4万册,预计在2020年能超越英文版的销量。
那么,这本书到底写了些什么呢?又有哪些特别之处呢?
全书内容充实,除去前言、附录和术语表这些内容,共分为六个部分 21 章节。我将核心章节内容制作了一份思维导图:
以上是主要章节的思维导图,图中的数字是折叠起来的分支数。
下面给大家看看部分的细节图:
从章节上可以看出,这本书主要面向中高级的开发者。它基本不涉及入门级内容,反而聚焦在数据模型、数据结构、函数对象、面向对象、控制流程与元编程等话题上。
打开书本第一章,作者用寥寥十几行 Python 代码,就徒手实现了一副扑克牌:
import collectionsCard = collections.namedtuple('Card', ['rank', 'suit'])class FrenchDeck:ranks = [str(n) for n in range(2, 11)] + list('JQKA')suits = 'spades diamonds clubs hearts'.split()def __init__(self):self._cards = [Card(rank, suit) for suit in self.suits for rank in self.ranks]def __len__(self):return len(self._cards)def __getitem__(self, position):return self._cards[position]
然后,直接就点出了全书最关注的核心话题:由各种特殊方法构成的数据模型。
特殊方法(special method)是xxx() 这种以前后双下划线命名的东西,通常又被称为魔术方法(magic method)和双下方法(dunder method),是 Python 独有的设计。
数据模型(data model)无疑是 Python 语言的关键核心,是得以形成所谓 Python 风格(pythonic)的基石。Python 中一切皆对象,而数据模型则是这些对象的接口规范,正是因为它,Python 得以获得极强的行为一致性。
《流畅的Python》以数据模型为始,定下了全文的风格基调,即关注 Python 对象的构造以及语言内部的特性细节,目的是让读者写出更地道、简洁高效、可读易用的代码。
《流畅的Python》作者与中文版合影
接着,它介绍了 Python 中一些内置类型的特性(序列类型、映射类型、文本和字节类型),介绍作为特殊对象的函数以及一般性对象的用法,介绍控制流程(迭代器、生成器、上下文管理器、协程和并发编程),最后深入到素有黑魔法之称的元编程(描述符和元类)。
全书 600 多页,洋洋洒洒,旁征博引,内容充实到让人应接不暇,让人时不时就产生一种“又学到了新知识”的感觉,以及一种“哦我想进一步学习 xxx”的求知欲望。
很多读过书的同学会有一个同感:它的“延伸阅读/杂谈”并不是闲笔,反而有些内容比正文更精彩,作者在此展示了他丰富的知识面(官方文档、社区典故、语法演进、文章视频、开源项目、语言差异等等),每一章都值得挖掘阅读。目前没有任何一本 Python 书籍能在这方面与它匹敌。
《流畅的Python》第一版基于当时最新的 Python 3.4。这些年来,Python 不断丰富自己,既正式宣告了 Python 2 版本的终结,又快速地演进到了最新的 3.9 版本。
但是,由于作者关注的是 Python 的核心概念,探讨的是基本不会变化的特性,因此倒不必太担忧内容过时,它仍是一本非常推荐购买和阅读参考的书籍。
我非常关心它的第二版,但是也知道,写作需要时间,英文出版、中文翻译和中文出版也都需要时间,所以我们就一起静候佳音吧。
http://www.taodudu.cc/news/show-5879082.html
相关文章:
- Oracle字符集相关知识
- 怎么用Python写出随时间变化的字_如果只推荐一本 Python 进阶书籍,我要 Pick 它!...
- 星智综合个性设计系统 v2007 1.0 官网
- 四道题设计用例
- php视频教程折蜗牛,超酷立体折纸蜗牛的折纸视频教程
- 超酷超实用的登录/注册界面,保你看完不后悔(无套路提供源码)
- HTML5/CSS3超酷环形动画菜单
- css能实现哪些动画,推荐9款使用CSS3实现的超酷动画效果
- 超酷超炫特效动画
- 超酷的开源项目集合
- html字段隐藏,HTML5+CSS3实现超酷登录窗口(自动隐藏默认文本及判断必填字段)
- 全屏响应式html5+jquery幻灯片轮播特效,纯CSS3超酷全屏响应式幻灯片特效
- css标签3d,超酷的js+css3实现的3D标签云特效
- 超酷的 CSS3 loading 预加载动画特效
- 基于html5 源码,10款基于HTML5+CSS3实现的超酷源码动画
- 6 个超酷的网站,专门用于学习算法
- php插入html动态背景,HTML5超酷响应式视频背景动画特效
- html桌面卡牌效果,纯CSS3超酷文章卡片UI设计效果
- JS实现超酷时钟
- 6个超酷的网站,专门用于学习编程算法
- 6个超酷的 Python 技巧
- raid卡电池
- dell linux raid 查看,HP_DELL RAID卡查看工具介绍
- Internet大事记,1981-1985
- LaTeX入门解析篇: 在Linux下编写高质量的文档
- 战略分析方法
- texlive - 专业的LaTeX: 在Linux下编写高质量的文档
- 51单片机通过计时器实现倒计时
- 周记#1:野蛮生长
- 洛谷 2403 [SDOI2010] 所驼门王的宝藏
如果只能推荐一本 Python 书,我一定 Pick 它相关推荐
- python高分书籍推荐_如果只能推荐一本 Python 书,我一定 Pick 它
前段时间,我偶然看到了一条推特: <流畅的Python>一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍之 ...
- python高分书籍推荐_如果只推荐一本 Python 书,我要 Pick 它!
今年二月初,我偶然看到了一条推特: <流畅的Python>一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍 ...
- 给大家推荐一本 Python 书,京东断货王!刚刚又火爆 IT 圈!
最近这段时间,常常有人在后台留言:该不该学Python?如何学Python?鉴于大家都有这方面的困惑,今天就给大家推荐一本巨有影响力的Python实战书,上线时间仅2个月,就超越了众多实力派,成京东和 ...
- 给大家推荐一本Python书,京东断货王!刚刚又火爆IT圈!
最近这段时间,常常有人在后台留言:该不该学Python?如何学Python?鉴于大家都有这方面的困惑,今天就给大家推荐一本巨有影响力的Python实战书,上线时间仅2个月,就超越了众多实力派,成京东和 ...
- 疯狂python讲义pdf_火了!她说:“请给我推荐一本Python书!”
如果说今年有一门最火"外语",那一定Python. 在某论坛上,有人发帖询问:"女友最近想学Python,求推荐一本书",瞬间留言就炸了. 不过,也早有机智的程 ...
- 如果只推荐一本 Python 进阶的书,我要 Pick 它!
作者 | 豌豆花下猫 今年二月初,我偶然看到了一条推特: <流畅的Python>一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯 ...
- 关于Python的书籍的阅读心得,推荐一本python的书籍
python的推荐书籍有哪些 推荐的几本Python入门自学到精通必看的书籍吧~1.<"笨办法"学Python>为什么把它作为推荐给Python入门自学者的第一本书?因 ...
- 怎么用Python写出随时间变化的字_如果只推荐一本 Python 进阶书籍,我要 Pick 它!...
本文作者:豌豆花下猫,来源:Python猫 今年二月初,我偶然看到了一条推特: <流畅的Python>一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python ...
- 基于python的智能文本分析 书_推荐一本Python数据分析必备工具书
身处大数据领域,我们每天都不得不与各种各样的数据打交道,无论是围绕数据去进行计算还是分析,它们都分属大数据领域的一个细分领域.在数据分析领域,Python语言一直一枝独秀,本文作者在数据分析领域深耕多 ...
最新文章
- 业务代码中,太多 if else 怎么办?
- 俄罗斯机器人雄鹿_在雄鹿无球可打,在火箭重获新生!哈登,你又让一人打出身价...
- 信息学奥赛一本通C++语言——1094:与7无关的数
- kubernetes 学习 pod相关
- 14天1000+大集群滚动升级,银行柜台竟然毫无感觉
- postman本地请求ip地址变成ipv6_华为认证-IPv6技术-ICMPv6介绍
- 扩展JS格式化(Format)功能及评论树
- .NET_.NET 部署问题
- 解决mac屏幕不能共享问题
- JavaScript开发规范要求
- php数组合成函数,PHP合并数组函数array_merge用法分析
- (继承及其访问限定符)(派生类及其默认成员函数)(赋值兼容规则)
- python协程,asyncIO
- Windows7不再卡五叶草,更新了bootx64.efi和bootmgfw.efi文件,支持安全启动,不用关闭安全启动和打开csm支持.
- 华为网络安全工程师:HCNA-Security(H12-711)题型解析(第一部分)-马青-专题视频课程...
- hive查询数据库总条数
- 在unity商店中寻找资源_Unity资产商店:五月疯狂促销活动正在进行中!
- EMPLOYEE表的创建与查询
- 利用pytorch训练好的模型测试单张图片
- Java Poi 根据文字内容 插入 word 图片