本书将帮助读者系统掌握编写高效、优雅的Python代码的方法,快速成长为一位高水平的Python开发工程师。
作者是Python编程领域的资深开发工程师,有多年的Python开发经验,本书得到了行业里15位技术专家的高度评价。
为了帮助读者编写出高效的Python代码,本书不仅从源代码的角度系统地讲解了Python的语法,让读者能知其然并知其所以然,而且结合具体的应用需求,对并发编程、性能优化、测试与调试、异常处理、内存管理等Python开发中的高级知识进行了详细的讲解。
为了指导读者编写出更优雅的Python代码,本书针对具体问题给出了大量的实例代码并给出了编码风格上的方法和建议。
如果你是没有Python编程经验的新人,你将通过本书系统掌握Python语法及其背后的原理,并从一开始就养成良好的编码习惯;如果你是有一定Python编程经验的老手,你将通过本书掌握各种Python编程中的高级知识,同时领略到优雅的编码风格和技巧。
在编写本书之前,笔者已经出版了《Python 3.8 从零开始学》《Python实战之数据分析与处理》等多本Python基础方面的书。很多读者看后,通过邮件、QQ、微信等方式询问笔者是否有计划再写一本Python进阶的书。之前没有这样的意愿,一方面是因为Python进阶的书写起来不容易,需要长久的技术积累,另一方面是因为若编写不当,反而容易误导读者。
经过这些年的技术积累,以及很多项目的实践经验积累,笔者自认为可以编写一本关于Python进阶的书了。很庆幸,自己踏出了这一步,这才有了本书。
本书是一本偏实践型的书,建议读者在阅读的过程中多加实践,在实践过程中逐步形成自己的编程风格。作为研发人员,最大的乐事莫过于别人一看代码,就知道这是谁编写的。犹如大家评价雷军所编写的代码像诗般优美一样,希望读者在一番练习后,可以让同事一眼就识别出那是你独有风格的优美代码。
随着信息技术的不断发展,越来越多的公司开始进入以技术驱动的发展阶段。对于技术驱动型公司,就是需要在别人看不见的细节处做得极其精致。同时,在实践的过程中不要害怕出错,编程经验都是在不断尝试、不断更正错误的过程中逐步积累下来的。若能在这个过程中将遇到的一个又一个坑填平,他日回眸一看,身后必将填出一条康庄大道;若遇到坑就绕过或躲避,会看到身后依然满目疮痍。
遇到问题不要只局限于当前的层次思考问题,而是要尽量站在更高的层次,站在问题的制高点思考问题,这样你将看得更远,考虑问题也更加全面。
【本书特色】
结合Python的部分源码做讲解,让读者对整数、字符串、列表和字典等基础数据结构能知其然,并知其所以然。
结合实际应用需求,对一些问题做具体讲解。
配合大量操作示例,理论与实践结合。
基于Python 3.8编写,从Python最新版本入手。
致力于帮助读者编写更为高效和优雅的Python代码。
【本书内容】
本书共17章,各章内容安排如下。
第0章讲解Python的整体架构及源码组织形式,使读者对Python的实现有一个宏观的认识。
第1章讨论数字相关主题。
第2章讲解字符串的基础操作,如提取字符串、搜索、替换以及解析等。
第3章讲解Python中内置的数据结构,如列表、字典以及集合等。
第4章讲解Python中迭代对象的处理。
第5章讲解不同类型的文件处理。
第6章讲解使用Python处理不同编码格式的数据。
第7章讲解一些高级、不常见的函数定义与使用模式。
第8章讲解和类定义有关的常见编程模型。
第9章介绍元编程技术,并且通过示例展示如何利用该技术定制源码行为。
第10章讲解模块和包的常用编程技术,包括如何组织包,如何把大型模块分割成多个文件,如何创建命名空间包。
第11章讲解如何使用Python编写客户端程序来访问已有的服务,以及如何使用Python实现网络服务端程序。
第12章讲解并发编程的各种方法与技巧,包括通用的多线程技术以及并行计算的实现方法。
第13章讲解编写脚本时经常用到的一些功能,如解析命令行选项以及获取有用的系统配置数据等。
第14章讨论测试、调试和异常处理的常见问题。
第15章讲解Python中的内存管理机制。
第16章讲解提升Python运行效率的方法与实践。
【读者对象】
●本书面向的读者对象为:
●有一定基础的Python爱好者。
●有Python基础,希望进一步提升编程能力的开发人员。
●需要用到Python的运维人员。
●开设Python相关课程的高校学生。
【关于本书】
本书的示例代码都是基于Python 3.8编写的,所以希望读者在根据示例进行操作时,使用的Python版本也是3.8及以上,那样可以避免很多因为版本不同所带来的问题。