本文作者:豌豆花下猫,来源:Python猫

今年二月初,我偶然看到了一条推特:

《流畅的Python》一书的作者发布了一条激动人心的消息:他正在写作第二版!

如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍之一。我在最早写“Python猫荐书系列”时,就想推荐它,但又觉得好东西应该留到最后,所以一直拖到了现在……

如果你读过它,肯定也会认为它值得推荐;如果你没有,那请往下阅读,看我的介绍能否打动你把它列为必读书目吧~

这本书的英文名是《Fluent Python》,在 2015 年 8 月出版。两年后,国内的图灵教育出品了译本,出版时间是 2017 年 5 月,获得豆瓣 9.4 高分。(图书翻译/出版真是个漫长的过程啊)

作者 Luciano Ramalho 是个巴西人、资深的 Python 程序员/演讲者、PSF(Python软件基金会)成员。书籍的技术审校与推荐人囊括了圈内的一众大咖。

此书一出,大受圈内好评,各国出版社纷纷引进版权,目前至少已有 9 种语言版本(来数数你认识几种?):

PS:图片出自@fluentpython官推,简体中文版最薄,巧合占据C位。根据图灵教育统计,简体中文版销量超过4万册,预计在2020年能超越英文版的销量。

那么,这本书到底写了些什么呢?又有哪些特别之处呢?

全书内容充实,除去前言、附录和术语表这些内容,共分为六个部分 21 章节。我将核心章节内容制作了一份思维导图:

(在Python猫公众号回复『流畅』,有完整的高清原图)

以上是主要章节的思维导图,图中的数字是折叠起来的分支数。

下面给大家看看部分的细节图:

原图太大,展示不下。在Python猫公众号内回复『流畅』,有完整的高清原图、PDF 版本和 MarkDown 版本

从章节上可以看出,这本书主要面向中高级的开发者。它基本不涉及入门级内容,反而聚焦在数据模型、数据结构、函数对象、面向对象、控制流程与元编程等话题上。

打开书本第一章,作者用寥寥十几行 Python 代码,就徒手实现了一副扑克牌:

import 

然后,直接就点出了全书最关注的核心话题:由各种特殊方法构成的数据模型。

特殊方法(special method)是__xxx__() 这种以前后双下划线命名的东西,通常又被称为魔术方法(magic method)和双下方法(dunder method),是 Python 独有的设计。

数据模型(data model)无疑是 Python 语言的关键核心,是得以形成所谓 Python 风格(pythonic)的基石。

Python 中一切皆对象,而数据模型则是这些对象的接口规范,正是因为它,Python 得以获得极强的行为一致性。

《流畅的Python》以数据模型为始,定下了全文的风格基调,即关注 Python 对象的构造以及语言内部的特性细节,目的是让读者写出更地道、简洁高效、可读易用的代码。

《流畅的Python》作者与中文版合影

接着,它介绍了 Python 中一些内置类型的特性(序列类型、映射类型、文本和字节类型),介绍作为特殊对象的函数以及一般性对象的用法,介绍控制流程(迭代器、生成器、上下文管理器、协程和并发编程),最后深入到素有黑魔法之称的元编程(描述符和元类)。

全书 600 多页,洋洋洒洒,旁征博引,内容充实到让人应接不暇,让人时不时就产生一种“又学到了新知识”的感觉,以及一种“哦我想进一步学习”的求知欲望。

很多读过书的同学会有一个同感:它的“延伸阅读/杂谈”并不是闲笔,反而有些内容比正文更精彩,作者在此展示了他丰富的知识面(官方文档、社区典故、语法演进、文章视频、开源项目、语言差异等等),每一章都值得挖掘阅读。目前没有任何一本 Python 书籍能在这方面与它匹敌。

我推荐大家找到自己感兴趣的章节进行阅读,另外,有人做了非常不错的读书笔记(都挺长的),我放在这里:

http://www. hongweipeng.com/index.p hp/archives/1345 (by hongweipeng) http:// frankorz.com/2017/07/01 /fluent-python-note (by 猫冬)

《流畅的Python》第一版基于当时最新的 Python 3.4。这些年来,Python 不断丰富自己,既正式宣告了 Python 2 版本的终结,又快速地演进到了最新的 3.9 版本。

但是,由于作者关注的是 Python 的核心概念,探讨的是基本不会变化的特性,因此倒不必太担忧内容过时,它仍是一本非常推荐购买和阅读参考的书籍。

我非常关心它的第二版,但是也知道,写作需要时间,英文出版、中文翻译和中文出版也都需要时间,所以我们就一起静候佳音吧。

推荐阅读

《流畅的Python》

[巴西]卢西亚诺·拉马略(Luciano Ramalho) 著

关联阅读

人民邮电出版社:最受推崇的 Python 书有哪些?​zhuanlan.zhihu.com

你们都是怎么学 Python 的?​www.zhihu.com

最好的Python入门教材是哪本?​www.zhihu.com

========

赠人玫瑰,手留余香,不要忘记点赞、收藏、关注 @人民邮电出版社 哦!

一键三连,感恩有你~

怎么用Python写出随时间变化的字_如果只推荐一本 Python 进阶书籍,我要 Pick 它!...相关推荐

  1. 怎么用Python写出随时间变化的字_面试必备 | 带你彻底搞懂 Python 生成器

    文章转载地址:面试必备 | 带你彻底搞懂 Python 生成器. 写在之前 Python 的高级语言特性一直是我们学习 Python 的一个难点,大部分人并没有做到熟练的掌握,甚至去学习它都感觉很困难 ...

  2. 怎么用Python写出随时间变化的字_Python爬虫实战,AcFun弹幕视频网 - 长情且温柔

    ​ CSDN个人主页: 高智商白痴原文地址: 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很多已经做案例的人,却不知道如何去学习更 ...

  3. python高分书籍推荐_如果只推荐一本 Python 书,我要 Pick 它!

    今年二月初,我偶然看到了一条推特: <流畅的Python>一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍 ...

  4. 如果只能推荐一本 Python 书,我一定 Pick 它

    前段时间,我偶然看到了一条推特: <流畅的Python>一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍之 ...

  5. 如果只推荐一本 Python 进阶的书,我要 Pick 它!

    作者 | 豌豆花下猫 今年二月初,我偶然看到了一条推特: <流畅的Python>一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯 ...

  6. python高分书籍推荐_如果只能推荐一本 Python 书,我一定 Pick 它

    前段时间,我偶然看到了一条推特: <流畅的Python>一书的作者发布了一条激动人心的消息:他正在写作第二版! 如果要票选最佳的 Python 进阶类书目,这本书肯定会是得票率最高的书籍之 ...

  7. 疯狂python讲义pdf_火了!她说:“请给我推荐一本Python书!”

    如果说今年有一门最火"外语",那一定Python. 在某论坛上,有人发帖询问:"女友最近想学Python,求推荐一本书",瞬间留言就炸了. 不过,也早有机智的程 ...

  8. Fluent关于UDF实现速度入口随时间变化

    Fluent关于UDF实现速度入口随时间变化](这里写自定义目录标题) fluent编译过程 小编也是第一次实现UDF在fluent中实现控制速度入口条件随时间变化,主要的学习过程还是网上的一些资料, ...

  9. C++:应用有限差分法求解随时间变化 平流方程 ut = - c * ux 在一个空间维度上,与 恒定速度,使用FTCS方法,正向时间差, 居中空间差(附完整源码)

    C++:应用有限差分法求解随时间变化 平流方程 ut = - c * ux 在一个空间维度上,与 恒定速度,使用FTCS方法,正向时间差, 居中空间差 # include <cmath> ...

最新文章

  1. javascript中apply、call和bind的区别
  2. Java的知识点20——包装类基本知识、包装类的用途、自动装箱和拆箱、包装类的缓存问题
  3. Struts2与Spring集成中的自动装配策略
  4. mysql集群重启报错lock_CentOS7.2 下 MySQL 之 PXC 集群部署【Docker+单机多节点】
  5. 【转】SQL 语句执行顺序
  6. Java基础——volatile关键字解析
  7. android 跑分,2018年10月国内Android手机安兔兔跑分性能排行榜
  8. python使用梯度下降方法实现线性回归算法_python实现线性回归梯度下降算法
  9. C语言杨辉三角形代码
  10. 数论 之 筛法总结(艾托拉斯特尼筛法+欧拉筛法)
  11. 《凤凰架构》读书笔记
  12. mysql 5.6 msvcr100_mysql 5.6.46 安装到winserver2012(x64) 遇到 MSVCR100.dll is missing
  13. 导向滤波算法原理与代码
  14. badboy录制过程不能登录, 提示脚本错误详解
  15. 一个程序员应该怎样去学习和掌握计算机英语呢
  16. 流媒体高清视频校园直播点播
  17. Python基础学习第十天
  18. 软件测试顶岗实习实习总结
  19. ubuntu服务器的安装(转载)
  20. MATLAB绘图之figure

热门文章

  1. linux IO模式及select、epoll、select详解(附示例)
  2. OSChina 周日乱弹 —— 第 100 期乱弹,尽情 High
  3. x86_64(intel64、amd64)和ARM64的区别以及发展
  4. 常用数据类型和bytes数组互转
  5. 坚鹏:中国工商银行金融数据治理及银行数字化转型培训结束
  6. jQuery获取checkbox是否选中,设置值,checkbox全选全不选功能
  7. 狙击女王的“柳德米拉·米哈伊尔洛夫娜·帕夫利琴科”。
  8. 劳动合同法之试用期工资的算法(轉)
  9. 线上教育遭受DDoS攻击激增,你还能忽视DDoS防护吗?
  10. Python round()函数的严谨用法