Python 3学习笔记(上卷)

雨痕
内容简介 经过9年的发展,Python 3生态已相当成熟。无论是语言进化、解释器性能提升,还是第三方支持,都是如此。随着Python 2.7 EOF日趋临近,迁移到Python 3的各种障碍也被逐一剔除。是时候在新环境下学习或工作了。 人们常说Python简单易学,但这是以封装和隐藏复杂体系为代价的。仅阅读语言规范很难深入,亦无从发挥其应有能力,易学难精才是常态。本书尝试通过分析解释器的工作机制来解析Python 3.6语言理论,以期帮助读者加深理解。 本书着重于剖析语言的相关背景和实现方式,适合有一定Python编程基础的读者阅读、参考。 前言 写作本书时,我已然摆脱“萌新”身份,算是稍有经验的作者。可即便如此,我依然无法保证本书的内容完全正确,且满足所有人的胃口。显然,这不可能做到。 在我看来,图书大抵分两类:学习和研究。学习类书籍满足日常学习和提升需要,用简练的语言把问题说清楚。最关键的是有清晰的线索,把散乱的知识串联起来,学习者可据此了解前因后果。至于研究类图书或论文,则应摆脱基础,摆脱语法,重点关注算法、架构、性能,乃至内部实现。所有这些,均以思想为支撑,超脱语言窠臼,构建并完善体系。 不同于写散文或小说,技术类图书的文字不好组织。自然语言易阅读,但不便描述有复杂流程分支的逻辑,易导致歧义。更何况,这其中还有各种转译带来的麻烦。故技术类图书应以自然语言开宗明义,阐述理论与规则,随后用代码对这段文字进行解释,毕竟代码先天有描述逻辑的优势。 很多书,尤其是英文版的图书,习惯于用大量篇幅对代码示例做各种讲解。我感觉这有些啰唆,想必很少有人去读第二遍,大家最多也就是用记号笔画出重点而已。既然如此,我们为何不信读者能阅读并理解这些代码呢?这本来就是程序员吃饭的本钱,最多在关键位置辅以注释便可。当然,阅读前提怕是要设定为非入门读者。好在我一再强调自己写的是第二本书,或曰…