Python Cookbook前言

Python Cookbook前言_第1张图片

作者:【美】 David Beazley & Brian K Jones

译者:陈舸

出版:人民邮电出版社(2015年2月第1版 2015年2月北京第1次印刷)

原版:O’REILLY

一、内容提要

本书介绍了 Python应用在各个领域中的一些使用技巧和方法,其主题涵盖了数据结构和算法、字符串和文本、数字、日期和时间,迭代器和生成器,文件和1/0,数据编码与处理,函数,类与对象,元编程,模块和包,网络和Web编程,并发,实用脚本和系统管理,测试、调试以及异常,C语言扩展等。

本书覆盖了 Python应用中的很多常见问题,并提出了通用的解决方案。书中包含了大量实用的编程技巧和示例代码,并在Python 3.3环境下进行了测试,可以很方便地应用到实际项目中去。此外,本书还详细讲解了解决方案是如何工作的,以及为什么能够 工作。

本书非常适合具有一定编程基础的Python程序员阅读参考。

二、O’Reilly Media,Inc.介绍

O’Reilly Media通过图书、杂志、在线服务、调查研究和会议等方式传播创新知识。 自1978年开始,O’Reilly—直都是前沿发展的见证者和推动者。超级极客们正在开创着未来,而我们关注真正重要的技术趋势——通过放大那些“细微的信号”来刺激社会对新科技的应用。作为技术社区中活跃的参与者,O’Reilly的发展充满了对创新的倡导、创造和发扬光大。

O’Reilly为软件开发人员带来革命性的“动物书”;创建第一个商业网站(GNN);组织了影响深远的开放源代码峰会,以至于开源软件运动以此命名;创立了Make杂志,从而成为DIY革命的主要先锋;公司一如既往地通过多种形式缔结信息与人的纽带。 O’Reilly的会议和峰会集聚了众多超级极客和高瞻远瞩的商业领袖,共同描绘出开创 新产业的革命性思想。作为技术人士获取信息的选择,O’Reilly现在还将先锋专家的知识传递给普通的计算机用户。无论是通过书籍出版,在线服务或者面授课程,每一项O’Reilly的产品都反映了公司不可动摇的理念——信息是激发创新的力量。

三、前言

自2008年以来,我们已经目睹了整个Python世界正缓慢向着Python 3进化的事实。众所周知,完全接纳Python 3要花很长的时间。事实上,就在写作本书时(2013年),大多数Python程序员仍然坚持在生产环境中使用Python 2。关于Python 3不能向后兼容的事实也已经做了许多努力来补救。的确,向后兼容性对于任何已经存在的代码库来说是个问题。但是,如果你着眼于未来,你会发现Python 3带来的好处绝非那么简单。

正因为Python 3是着眼于未来的,本书在之前的版本上做了很大程度的修改。首先也是最重要的一点,这是一本积极拥抱Python 3的书。所有的章节都采用Python 3.3来 编写并进行了验证,没有考虑老的Python版本或者“老式”的实现方式。事实上,许多章节都只适用于Python 3.3甚至更高的版本。这么做可能会有风险,但是最终的目的是要编写一本Python 3的秘籍,尽可能基于最先进的工具和惯用法。我们希望本书可以指导人们用Python 3编写新的代码,或者帮助开发人员将已有的代码升级到 Python 3。

无需赘言,以这种风格来编写本书给编辑工作带来了一定的挑战。只要在网络上搜索一下Python秘籍,立刻就能在ActiveState的Python版块或者Stack Overflow这样的站点上找到数以千计的使用心得和秘籍。但是,大部分这类资源已经沉浸在历史和过去中了。由于这些心得和秘籍几乎完全是针对Python 2所写的,其中常常包含有各种针对Python不同版本(例如2.3版对比2.4版)之间差异的变通方法和技巧。此外,这些网上资源常常使用过时的技术,而这些技术现在成了Python 3.3的内建功能。想寻找专门针对Python 3的资源会比较困难。

本书并非搜寻特定于Python 3方面的秘籍将其汇集而成,本书的主题都是在创作中由现有的代码和技术而产生出的灵感。我们将这些思想作为跳板,尽可能采用最现代化的Python编程技术来写作,因此本书的内容完全是原创性的。对于任何希望以现代 化的风格来编写代码的人,本书都可以作为参考手册。

在选择应该包含哪些章节时,我们有一个共识。那就是根本不可能编写一本涵盖了每种Python用途的书。因此,我们在主题上优先考虑Python语言核心方面的内容,以及能够广泛适用于各种应用领域的常见任务。此外,有许多秘籍是用来说明在Python 3中新增的功能,这对许多人来说比较陌生,甚至对于那些使用老版Python经验丰富的程序员也是如此。我们也会优先选择普遍适用的编程技术(即,编程模式)作为主题,而不会选择那些试图解决一个非常具体的实际问题但适用范围太窄的内容。尽管在部分章节中也提到了特定的第三方软件包,但本书绝大多数章节都只关注语言核心和标准库。

四、本书适合谁

本书的目标读者是希望加深对Python语言的理解以及学习现代化编程惯用法的有经验的程序员。本书许多内容把重点放在库、框架和应用中使用的高级技术上。本书假设读者已经有了理解本书主题的必要背景知识(例如对计算机科学的一般性知识、数据 结构、复杂度计算、系统编程、并发、C语言编程等)。此外,本书中提到的秘籍往往只是一个框架,意在提供必要的信息让读者可以起步,但是需要读者自己做更多的研究来填补其中的细节。因此,我们假设读者知道如何使用搜索引擎以及优秀的Python 在线文档。

有一些更加高级的章节将作为读者耐心阅读的奖励。这些章节对于理解Python底层的工作原理提供了深刻的见解。你将学到新的技巧和技术,可以将这些知识运用到自己的代码中去。

五、本书不适合谁

这不是一本用来给初学者首次学习Python编程而使用的书。事实上,本书已经假设读者通过Python教程或者人门书籍了解了基本知识。本书同样不能用来作为快速参考手册(即,快速查询特定模块中的某个函数)。相反,本书的目标是把重点放在特定的编程主题上,展示可能的解决方案并以此作为跳板引导读者学习更加高级的内容。这些内容你可能会在网上或者参考书中遇到过。

六、在线代码示例

本书中几乎所有的代码示例都可以在http://github.com/dabeaz/python-cookbook上找到。 作者欢迎读者针对代码示例提供bug修正、改进以及评论。

七、使用代码示例

本书的目的是为了帮助读者完成工作。一般而言,你可以在你的程序和文档中使用本书中的代码,而且也没有必要取得我们的许可。但是,如果你要复制的是核心代码,则需要和我们打个招呼。例如,你可以在无需获取我们许可的情况下,在程序中使用本书中的多个代码块。但是,销售或分发O’ Reilly图书中的代码光盘则需要取得我们的许可。通过引用本书中的示例代码来回答问题时,不需要事先获得我们的许可。但是,如果你的产品文档中融合了本书中的大量示例代码,则需要取得我们的许可。

在引用本书中的代码示例时,如果能列出本书的属性信息是最好不过。一个属性信息通常包括书名、作者、出版社和ISBN。例如:Python Cookbook, 3rd edtion, by David Beazley and Brain K.Jones(O’Reilly)。Copyright 2013 David Beazley and Brain Jones, 978-1-449-34037-70

在使用书中的代码时,如果不确定是否属于正常使用,或是否超出了我们的许可,请通过 [email protected] 与我们联系。

八、联系方式

如果你想就本书发表评论或有任何疑问,敬请联系出版社。

美国:

O’Reilly Media Inc.

1005 Gravenstein Highway North Sebastopol, CA 95472

中国:

北京市西城区西直门南大街2号成铭大厦C座807室(100035)

奥莱利技术咨询(北京)有限公司

我们还为本书建立了一个网页,其中包含了勘误表、示例和其他额外的信息。你可以通过链接 http://oreil.ly/python_cookbook_3e来访问页面。

关于本书的技术性问题或建议,请发邮件到:

[email protected]

欢迎登录我们的网站(http://www.oreilly.com),查看更多我们的书籍、课程、会议和最新动态等信息。

你可能感兴趣的:(Python Cookbook前言)