版权声明
Original English language edition, entitled Beginning Python: From Novice to Professional, Third Edition by Magnus Lie Hetland, published byApress, 2855 Telegraph Avenue, Suite 600, Berkeley, CA 94705 USA.
Copyright © 2017 by Magnus Lie Hetland. Simplified Chinese-language edition copyright © 2018 by Posts & Telecom Press. All rightsreserved.
本书中文简体字版由Apress L. P.授权人民邮电出版社独家出版。未经出版者书面许可,不得以任何方式复制或抄袭本书内容。
版权所有,侵权必究。
前言
巨蟒剧团有首老歌唱道:“又来了一个,它走了又来。又来了一个,什么时候是个头?”自本书第2版面世以来,Python 3的普及程度得到了极大提高,因此这一版完全转向了Python 3。在此期间,还有其他的变化:在Python生态系统中,各种包轮番登场,各种编码实践大行其道后又日渐式微。在必要之处或对读者有帮助的前提下,本书的有些部分完全重写,但最初的痕迹还依稀可见。例如,本书前身Practical Python于21世纪初出版时,Usenet依然应用广泛,可现在大多数互联网用户可能从未听说过它。因此,对于第23章创建连接到NNTP服务器的项目,与其说是为了介绍主流编程生涯中将用到的编程技能,不如说是让读者了解一下历史。一些比较古怪的内容也依旧保留,因为它们是很不错的编程示例,也是本书悠长历史的见证。
与以往一样,我要深深地感谢让本书以前各版得以付梓的人。这里我要特别感谢Mark Powers,感谢他在我进度缓慢时极具耐心。还要感谢MichaelThomas,感谢他出色的技术审阅工作(并指出了原稿中所有的Python 2式print语句)。但愿你喜欢全新升级后的这一版。正如Terny Jones在提到那首老歌时所说:“显然,有一个完整的管弦乐队会更好。”
第2版前言
新版的《Python基础教程》终于和大家见面了。如果算上本书的前身Practical Python,实际上这已经是第3版了。这是我将近10年心血的结晶。在此期间,Python发生了很多有趣的变化,我也尽力调整了对这门语言的介绍。当前,Python处于长期以来最为翻天覆地的转变期:Python 3推出。编写本书期间,最终版本还未发布,但其包含的功能已确定,还推出了多个可用的版本。这次修订不向后兼容,这是我编写这一版时面临的最大挑战。换而言之,我不能仅仅挑出一些新增的功能进行介绍。另外,它还修改了一些既有的功能,因此有些在Python 2.5中理所当然的事情在新版本中已不再正确。
倘若整个Python社区都立即转向Python 3并修改所有的遗留代码,那根本不成问题。我只需介绍Python 3就行!然而,目前依然存在大量用Python 2编写的代码,而且大家可能还会继续编写这样的代码,直到有一天所有人都认为应使用Python 3。
那么我是如何应对这种变化的呢?首先,虽然有些向后兼容的变化,但Python语言本身总体变化不大。因此,如果完全针对Python 2.5,编写的内容对Python 3来说也是大体正确的(对Python 2.6来说更是如此)。至于那些不再正确的部分,我采取了比较保守的态度,因为大家完全接受Python 3还需要一段时间。因此,这一版主要是基于Python 2.5编写的,同时指出将会改变的情形。另外,我还提供了附录D,让你对重大变化有大致的了解。对大多数读者来说,这样处理是完全可行的。