![]()
编辑推荐 全面涵盖当今应用开发中的众多领域 为中级Python开发人员提供实践方法 涵盖大量实用的代码案例 每章末尾的习题有助于巩固所学知识 Python是一种灵活、可靠且具有表现力的编程语言,它将编译语言的强大与脚本语言的简洁性、快速开发特性整合起来。在本书中,Python开发人员兼企业培训师Wesley Chun会帮助您将Python技能提升到更高的水平。 本书涵盖了成为一名技术全面的Python开发人员所需的一切内容。本书讲解了应用开发相关的多个领域,而且书中的内容可以立即应用到项目开发中。此外,本书还包含了一些使用Python 2和Python 3编写的代码案例,以及一些代码移植技巧。有些代码片段甚到无须修改就可以运行在Python 2.x或Python 3.x上。 本书讲解了如下内容: 学习专业的Python风格、实践以及好的编程习惯; 使用TCP、UDP、XML-RPC来开发客户端和服务器,并供高 级的库(比如SocketServer和Twisted)使用使用Tkinter和其他可用的工具来开发GUI应用; 通过使用C/C++编写扩展,或者使用多线程来编写I/O密集型代码,提升应用的性能; 探究QSL和关系数据库、ORM,甚到是MongoDB这样的非关系型(NonSQL)数据库; 学习Web编程的基础知识,包括Web客户端和服务器,以及CGI和WSGI; 使用正则表达式和强大的文本处理工具,来创建和解析CSV、JSON和XML数据; 使用COM客户端编程与常见的Microsoft Office软件(比如Excel、PowerPoint、Outlook)进行交互; 使用Django框架深入了解Web开发,以及使用Google App Engine深入了解云计算; 使用Jyhon探索Java编程,以及在JVM上运行Python代码的方式; 连接Web服务,比如连接Yahoo!Fiance获取股票行情,或者连接Yahoo!Mail、Gmail以及其他邮件服务器来下载或发送邮件; 通过学习如何连接Twitter和Google+网络来拥抱社交媒体的热潮。 内容推荐 本书是经典畅销图书《Python核心编程(第 二版)》的全新升级版本,总共分为3部分。第 1部分为讲解了Python的一些通用应用,包括正则表达式、网络编程、Internet客户端编程、多线程编程、GUI编程、数据库编程、Microsoft Office编程、扩展Python等内容。第 2部分讲解了与Web开发相关的主题,包括Web客户端和服务器、CGI和WSGI相关的Web编程、Django Web框架、云计算、高 级Web服务。第3部分则为一个补充/实验章节,包括文本处理以及一些其他内容。 《Python核心编程(第3版)英文版》适合具有一定经验的Python开发人员阅读。 目录 Part I General Application Topics 1 部分 通用应用主题 Chapter 1 Regular Expressions 2 章 正则表达式 1.1 Introduction/Motivation / 引言/动机 3 1.2 Spe Symbols and Characters / 特殊的符号和字符 6 1.3 Regexes and Python / 正则表达式和Python语言 16 1.4 Some Regex Examples 一些正则表达式示例 36 1.5 A Longer Regex Example更长的正则表达式示例 41 1.6 Exercises / 练习 48 Chapter 2 Network Programming 53 第2章 网络编程 2.1 Introduction / 前言 54 2.2 What Is Client/Server Architecture? / 客户端/服务器网络编程 54 2.3 Sockets: Communication Endpoints / 套接字:通信端点 58 2.4 Network Programming in Python / Python中的网络编程 61 2.5 *The SocketServer Module / SocketServer模块 79 2.6 *Introduction to the Twisted Framework / *Twisted框架介绍 84 2.7 Related Modules / 相关模块 88 2.8 Exercises / 练习 89 Chapter 3 Internet Client Programming 94 第3章 Internet客户端编程 3.1 What Are Internet Clients? / 什么是Internet客户端? 95 3.2 Transferring Files / 文件传输 96 3.3 Network News / 网络新闻 104 3.4 E-Mail / 电子邮件 114 3.5 Related Modules / 相关模块 146 3.6 Exercises / 练习 148 Chapter 4 Multithreaded Programming 156 第4章 多线程编程 4.1 Introduction/Motivation / 简介/动机 157 4.2 Threads and Processes / 线程和进程 158 4.3 Threads and Python / 线程和Python 160 4.4 The thread Module / thread模块 164 4.5 The threading Module / threading模块 169 4.6 Comparing Single vs. Multithreaded Execution / 单线程和多线程执行对比 180 4.7 Multithreading in Practice / 多线程实践 182 4.8 Producer-Consumer Problem and the Queue/queue Module / 生产者-消费者问题和Queue/queue模块 202 4.9 Alternative Considerations to Threads / 线程的替代方案 206 4.10 Related Modules / 相关模块 209 4.11 Exercises / 练习 210 Chapter 5 GUI Programming 213 第5章 GUI编程 5.1 Introduction / 简介 214 5.2 Tkinter and Python Programming / Tkinter和Python编程 216 5.3 Tkinter Examples / Tkinter示例 221 5.4 A Brief Tour of Other GUIs / 其他GUI简介 236 5.5 Related Modules and Other GUIs / 相关模块和其他GUI 247 5.6 Exercises / 练习 250 Chapter 6 Database Programming 253 第6章 数据库编程 6.1 Introduction / 简介 254 6.2 The Python DB-API / Python的DB-API 259 6.3 ORMs / 对象关系映射(ORM) 289 6.4 Non-Relational Databases / 非关系型数据库 309 6.5 Related References / 相关文献 316 6.6 Exercises / 练习 319 Chapter 7 *Programming Microsoft Office 324 第7章 *Microsoft Office编程 7.1 Introduction / 简介 325 7.2 COM Client Programming with Python / 使用Python进行COM客户端编程 326 7.3 Introductory Examples / 入门示例 328 7.4 Intermediate Examples / 中级示例 338 7.5 Related Modules/Packages / 相关模块/包 357 7.6 Exercises / 练习 357 Chapter 8 Extending Python 364 第8章 扩展Python 8.1 Introduction/Motivation / 简介和动机 365 8.2 Extending Python by Writing Extensions / 编写Python扩展 368 8.3 Related Topics / 相关主题 384 8.4 Exercises / 练习 388 Part II Web Development 389 第2部分 Web开发 Chapter 9 Web Clients and Servers 390 第9章 Web客户端和服务器 9.1 Introduction / 简介 391 9.2 Python Web Client Tools / Python Web客户端工具 396 9.3 Web Clients / Web客户端 410 9.4 Web (HTTP) Servers / Web(HTTP)服务器 428 9.5 Related Modules / 相关模块 433 9.6 Exercises / Exercises 436 Chapter 10 Web Programming: CGI and WSGI 441 0章 Web编程:CGI和WSGI 10.1 Introduction / 简介 442 10.2 Helping Web Servers Process Client Data / 帮助Web服务器处理客户端数据 442 10.3 Building CGI Applications / 建立CGI应用程序 446 10.4 Using Unicode with CGI / 在CGI中使用Unicode 464 10.5 Advanced CGI / 不错CGI 466 10.6 Introduction to WSGI / WSGI简介 478 10.7 Real-World Web Development / 真实世界的Web开发 487 10.8 Related Modules / 相关模块 488 10.9 Exercises / 练习 490 Chapter 11 Web Frameworks: Django 493 1章 Web框架:Django 11.1 Introduction / 简介 494 11.2 Web Frameworks / Web框架 494 11.3 Introduction to Django / Django简介 496 11.4 Projects and Apps / 项目和应用 501 11.5 Your “Hello World” Application (A Blog) / “Hello World”应用(一个博客) 507 11.6 Creating a Model to Add Database Service / 创建一个Model来添加数据库服务 509 11.7 The Python Application Shell / Python Application Shell 514 11.8 The Django Administration App / Django管理应用 518 11.9 Creating the Blog’s User Interface / 创建Blog的用户界面 527 11.10 Improving the Output / 改进输出 537 11.11 Working with User Input / 处理用户输入 542 11.12 Forms and Model Forms / 表单和模型表单 546 11.13 More About Views / 视图进阶 551 11.14 *Look-and-Feel Improvements / *改善外观 553 11.15 *Unit Testing / *单元测试 554 11.16 *An Intermediate Django App: The TweetApprover / 中级Django应用:TweetApprover 564 11.17 Resources / 资源 597 11.18 Conclusion / 总结 597 11.19 Exercises / 练习 598 Chapter 12 Cloud Computing: Google App Engine 604 2章 云计算:Google App Engine 12.1 Introduction / 简介 605 12.2 What Is Cloud Computing? / 什么是云计算? 605 12.3 The Sandbox and the App Engine SDK / 沙盒和App Engine SDK 612 12.4 Choosing an App Engine Framework / 选择一个App Engine框架 617 12.5 Python 2.7 Support / Python 2.7支持 626 12.6 Comparisons to Django / 与Django比较 628 12.7 Morphing “Hello World” into a Simple Blog / 将“Hello World”改成一个简单的博客 631 12.8 Adding Memcache Service / 添加Memcache服务 647 12.9 Static Files / 静态文件 651 12.10 Adding Users Service / 添加用户服务 652 12.11 Remote API Shell / 远程API Shell 654 12.12 Lightning Round (with Python Code) / 问与答(Python实现) 656 12.13 Sending Instant Messages by Using XMPP / 使用XMPP发送即时消息 660 12.14 Processing Images / 处理图片 662 12.15 Task Queues (Unscheduled Tasks) / 任务队列(非定期任务) 663 12.16 Profiling with Appstats / 使用Appstats进行分析 670 12.17 The URLfetch Service / URLfetch服务 672 12.18 Lightning Round (without Python Code) / 问与答(没有Python代码) 673 12.19 Vendor Lock-In / 厂商锁定 675 12.20 Resources / 资源 676 12.21 Conclusion / 总结 679 12.22 Exercises / 练习 680 Chapter 13 Web Services 684 3章 Web服务 13.1 Introduction / 简介 685 13.2 The Yahoo! Finance Stock Quote Server / Yahoo!金融股票报价服务器 685 13.3 Microblogging with Twitter / Twitter微博 690 13.4 Exercises / 练习 707 Part III Supplemental/Experimental 713 第3部分 补充/实验章节 Chapter 14 Text Processing 714 4章 文本处理 14.1 Comma-Separated Values / 逗号分隔的值(CSV) 715 14.2 JavaScript Object Notation / JavaScript对象表示法(JSON) 719 14.3 Extensible Markup Language / 可扩展标记语言 724 14.4 References / 参考资料 738 14.5 Related Modules / 相关模块 740 14.6 Exercises / 练习 740 Chapter 15 Miscellaneous 743 5章 其他内容 15.1 Jython / Jython 744 15.2 Google+ / Google+ 748 15.3 Exercises / 练习 759 Appendix A Answers to Selected Exercises 763 附录A 部分练习参考答案 Appendix B Reference Tables 768 附录B 参考表 Appendix C Python 3: The Evolution of a Programming Language 798 附录C Python 3:一种编程语言的进化产物 Appendix D Python 3 Migration with 2.6+ 807 附录D 利用Python 2.6+进行Python 3迁移 书评(媒体评论) “本书简洁而不失其技术深度,内容丰富全面,历史资料翔实齐全,这让本书成为学习Python的完 美教程。本书易于阅读,以极简的文字介绍了复杂的案例,同时涵盖了其他同类图书中很少涵盖的历史参考资料。简而言之,本书棒极了!” ——Gloria. W “期待已久的Core Python Programming第 2版已经证明了本书确实值得期待——它深度与广度齐备,其中囊括的有用练习可以帮助读者掌握Python并付之于实践。” ——Alex Martelli,Python in a Nutshell作者兼Python Cookbook编辑 “Wesley Chun的Core Python Programming一书好评如潮,而且它也证明它配得上所有的好评。我想该书是当前学习Python的图书。在市面上众多的Python图书中,我觉得Chun的这本书是好的,因此向大家强烈推荐本书。” ——David Mertz博士,IBM DeveloperWorks “在过去多年,我一直在从事Python的研究,发现本书获得了大量的正面评价。这些评价证实了这样一个观点,即Core Python Programming被认为是Python入门读物事实上的标准。” ——Richard Ozaki,Lockheed Martin公司 “终于,一本既可以作为Python教程又可以作为Python编程语言参考的图书问世!” ——Michael Baxter,Linux Journal “本书写作相当精良。这是我遇到的清晰、友好的Python图书,它在一个广阔的背景中介绍了Python。它仔细、深入地剖析了一些重要的Python主题,而且读者无需大量的相关经验也能看懂。与所有其他Python入门类图书不同的是,它不会用隐晦、难以理解的文字来折磨读者,而是始终立足于帮助读者牢固掌握Python的语法和结构。” ——http://python.org bookstore Web site “如果我只能有一本Python图书的话,那它肯定是Wesley Chun著作的Core Python Programming。本书成功地涵盖了Python的多个主题,其详细程度远甚于Learning Python一书,而且涵盖的主题也远非Python核心语言这么简单。如果你只打算购买一本Python图书,我强烈向您推荐本书。你不但会爱上本书,也会爱上本书中包含的程序员的讽刺性智慧。重要的是,您将学会Python。更更重要的是,您会发现本书会在您每日的Python编程生活中提供各种帮助。干的不错,Chun先生!” ——Ron Stephens,Python Learning Foundation “我认为编程初学者的语言是Python,毋庸置疑!我喜欢的图书是Core Python Programming。” ——s003apr,MP3Car.com Forums “就我个人而言,我相当喜欢Pyhon。它易于学习、很好直观、相当灵活,而且执行速度也相当快。在Windows世界中,Python虽然只是刚崭露头角,但是因为越来越多的人们发现了它,因此选择从Python起步可以获得大量的支持。要学习Python,我选择从Wesley Chun的这本Core Python Programming起步。” ——Bill Boswell,MCSE,Microsoft Certified Professional Magazine Online “如果你是通过图书来学习编程,我向您推荐Core Python Programming,它是目前为止我发现的Python图书。我也是一个Python新兵,但是在3个月之后,我就可以在项目中实施Python了(自动处理MSOffice、SQL DB Stuff等)。” ——ptonman,Dev Shed Forums “Python是一种美丽的语言。它易于学习、跨平台,而且能够良好运行。它已经实现了Java一直想要实现的很多技术目标。对Python的一句话描述是‘所有其他语言是随着时间发生演进变化,但是Python则是设计出来的。’而且Python设计的相当不错。虽然现在市面上有大量的Python图书,但是目前为止我遇到的好的一本是Core Python Programming。” ——Chris Timmons,C. R. Timmons Consulting “如果你喜欢Prentice Hall出版社Core系列图书,你需要考虑的另一本写作精良的图书是Core Python Programming。它将其他Python图书中很少涵盖的许多实用主题进行了事无巨细的剖析。” ——Mitchell L. Model, MLM Consulting |