大小:54.23M
更新时间:23-09-01
系统:Pc
编写高质量代码改善python程序的91个建议是一本Python程序代码编辑指南,由张颖和赖勇浩两人共同编著。本书将为你编写健壮、优雅、高质量的Python代码提供切实帮助!内容全部由Python编码的实践组成,从基本原则、惯用法、语法、库、设计模式、内部机制、开发工具和性能优化8个方面深入探讨了编写高质量Python代码的技巧与禁忌,一共总结出91条宝贵的建议。全书尝试着从基本原则、惯用法、语法、库、设计模式、内部机制、开发工具和性能优化8方面深入探讨编写高质量Python代码的技巧、禁忌和佳实践,能够适用于有一定的Python基础,希望通过项目最佳实践来提升自己的相关Python人员。
《编写高质量代码改善python程序的91个建议》针对每个问题所选择的应用场景都非常典型,给出的建议也都与实践紧密结合。书中的每一条建议都可能在你的下一行代码、下一个应用或下一个项目中显露锋芒。建议你将本书搁置在手边,随时查阅,相信这么做一定能使你的学习和开发工作事半功倍。
本书分为8章,主要从编程惯用法、基础语法、库、设计模式、内部机制、开发工具、性能剖析与优化等方面解读如何编写高质量的Python程序。每个章节的内容都以建议的形式呈现,这些建议或源于实际项目应用经验,或源于对Python本质的理解和探讨,或源于社区推荐的做法。它们能够帮助读者快速完成从入门到进阶的这个过程。由于各个章节相对独立,因此无须花费整段的时间从头开始阅读。你可以在空闲的时候选取任意感兴趣的小节阅读。为了减轻读者负担,本书代码尽量保持完整,阅读过程中无须额外下载其他相关代码。
前 言
第1章 引论 1
建议1:理解Pythonic概念 1
建议2:编写Pythonic代码 5
建议3:理解Python与C语言的不同之处 8
建议4:在代码中适当添加注释 10
建议5:通过适当添加空行使代码布局更为优雅、合理 12
建议6:编写函数的4个原则 15
建议7:将常量集中到一个文件 18
第2章 编程惯用法 20
建议8:利用assert语句来发现问题 20
建议9:数据交换值的时候不推荐使用中间变量 22
建议10:充分利用Lazy evaluation的特性 24
建议11:理解枚举替代实现的缺陷 25
建议12:不推荐使用type来进行类型检查 27
建议13:尽量转换为浮点类型后再做除法 29
建议14:警惕eval()的安全漏洞 31
建议15:使用enumerate()获取序列迭代的索引和值 33
建议16:分清==与is的适用场景 35
建议17:考虑兼容性,尽可能使用Unicode 37
建议18:构建合理的包层次来管理module 42
第3章 基础语法 45
建议19:有节制地使用from…import语句 45
建议20:优先使用absolute import来导入模块 48
建议21:i+=1不等于++i 50
建议22:使用with自动关闭资源 50
建议23:使用else子句简化循环(异常处理) 53
建议24:遵循异常处理的几点基本原则 55
建议25:避免finally中可能发生的陷阱 59
建议26:深入理解None,正确判断对象是否为空 60
建议27:连接字符串应优先使用join而不是+ 62
建议28:格式化字符串时尽量使用。format方式而不是% 64
建议29:区别对待可变对象和不可变对象 68
建议30:[]、()和{}:一致的容器初始化形式 71
建议31:记住函数传参既不是传值也不是传引用 73
建议32:警惕默认参数潜在的问题 77
建议33:慎用变长参数 78
建议34:深入理解str()和repr()的区别 80
建议35:分清staticmethod和classmethod的适用场景 82
第4章 库 86
建议36:掌握字符串的基本用法 86
建议37:按需选择sort()或者sorted() 89
建议38:使用copy模块深拷贝对象 92
建议39:使用Counter进行计数统计 95
建议40:深入掌握ConfigParser 97
建议41:使用argparse处理命令行参数 99
建议42:使用pandas处理大型CSV文件 103
建议43:一般情况使用ElementTree解析XML 107
建议44:理解模块pickle优劣 111
建议45:序列化的另一个不错的选择——JSON 113
建议46:使用traceback获取栈信息 116
建议47:使用logging记录日志信息 119
建议48:使用threading模块编写多线程程序 122
建议49:使用Queue使多线程编程更安全 125
第5章 设计模式 129
建议50:利用模块实现单例模式 129
建议51:用mixin模式让程序更加灵活 132
建议52:用发布订阅模式实现松耦合 134
建议53:用状态模式美化代码 137
第6章 内部机制 141
建议54:理解built-in objects 141
建议55:__init__()不是构造方法 143
建议56:理解名字查找机制 147
建议57:为什么需要self参数 151
建议58:理解MRO与多继承 154
建议59:理解描述符机制 157
建议60:区别__getattr__()和__getattribute__()方法 160
建议61:使用更为安全的property 164
建议62:掌握metaclass 169
建议63:熟悉Python对象协议 176
建议64:利用操作符重载实现中缀语法 179
建议65:熟悉 Python 的迭代器协议 181
建议66:熟悉 Python 的生成器 185
建议67:基于生成器的协程及greenlet 188
建议68:理解GIL的局限性 192
建议69:对象的管理与垃圾回收 194
第7章 使用工具辅助项目开发 197
建议70:从PyPI安装包 197
建议71:使用pip和yolk安装、管理包 199
建议72:做paster创建包 202
建议73:理解单元测试概念 209
建议74:为包编写单元测试 212
建议75:利用测试驱动开发提高代码的可测性 216
建议76:使用Pylint检查代码风格 218
建议77:进行高效的代码审查 221
建议78:将包发布到PyPI 224
第8章 性能剖析与优化 227
建议79:了解代码优化的基本原则 227
建议80:借助性能优化工具 228
建议81:利用cProfile定位性能瓶颈 229
建议82:使用memory_profiler 和 objgraph 剖析内存使用 235
建议83:努力降低算法复杂度 237
建议84:掌握循环优化的基本技巧 238
建议85:使用生成器提高效率 240
建议86:使用不同的数据结构优化性能 243
建议87:充分利用set的优势 245
建议88:使用multiprocessing克服GIL的缺陷 248
建议89:使用线程池提高效率 254
建议90:使用C/C++模块扩展提高性能 257
建议91:使用 Cython 编写扩展模块 259
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
应用信息
同类热门
类似软件
python程序设计教程76.13M586人在用 pythony语言是一种解释型、面向对象的计算机程序设计语言,能够广泛用于计算机程序设计教学语言,系统管理编程脚本语言,科学计算等。但如何才能从入门到精通呢?这里小编特别提供python程序设计教程 pdf下载,由江红、余青松编著,清华大学和北京交通
查看
python学习手册第4版pdf版92.37M1484人在用 python是一种非常流行的开源编程语言,可以在各种领域中用于编写独立的程序和脚本,它不仅具备免费、可移植的特色,还拥有了极其强大的功能,使用起来也相当的方便。相信来自各个角落的程序猿已经发现,Python对于开发者效率和软件质量的关注,这无论在大
查看
python入门经典教材45.5M1381人在用 python是诞生于一种开放源代码的脚本编程语言,语言风格清晰,具有较强的可读性,应用非常广泛。可对于部分新手程序员来讲,想要灵活运用python必须拥有一套秘籍,而小编今天分享的“python入门经典”就是非常优秀的秘籍,通过该书读者不仅能掌握p
查看
python qt gui快速编程:PyQt编程指南77.77M1103人在用 python qt gui快速编程:PyQt编程指南是一本PyQt开发指导手册,由英国程序员Mark Summerfield编著。全书主要讲述如何利用Python和Qt开发GUI应用程序的原理、方法和关键技术。全书共分四个部分:第一部分主要讲述Py
查看
Python性能分析与优化5.39M582人在用Python性能分析与优化是一本Python代码分析与优化指导书籍,由web程序员多格里奥编著。本书首先介绍了什么是性能分析,性能分析如何在项目开发周期中发挥作用,以及通过在项目中进行性能分析实践能够取得的效果。紧接着开始介绍分析性能所需的核心工具(性能
查看
python基础教程第2版中文高清pdf版29.63M788人在用本次分享的是python基础教程第2版中文高清pdf版,由于是PDF格式,因此用户需要安装PDF阅读器才能正常阅读,好了让我们回到正题。这是一本包括Python程序最基本的设计操作教程,介绍了Python的基础知识和基础概念,包括了列表、元组、字符串、字
查看
Effective Python:编写高质量python代码的59个有效方法25.93M1344人在用Effective Python:编写高质量python代码的59个有效方法是一本python编辑手册,由美国程序员布雷特·斯拉特金编著。本书以使用场景为主导的精练教学方式,汇聚了59条优秀的实践原则、开发技巧和便捷方案,并以实用的代码范例来解释它们。其
查看热门标签
网友评论0人参与,0条评论
最新排行
惠普1020打印机使用说明书1.34M hp1020是一款非常优秀的黑白激光打印机,它具备了非常多实用给力的功能,可在工作中帮助用户快速的打印文件,在惠普打印机系列中也深受广大用户的青睐。 hp1020使用说明主要是针对新手用户提供的使用说明书,内详细的讲解了该打印机的各种操
查看
兄弟mfc7420使用说明书3.91M 兄弟mfc7420说明书是针对同款“兄弟mfc7420打印机”推出的使用说明书,主要还是为了让新手用户更快速的上手打印机进行操作。兄弟mfc7420使用说明书内容有:安全注意事项、简介、开始、设置发送、设置接收、速拨号和拨号选项、打印报告、复印、故
查看
深入理解linux驱动程序设计22.19M吴国伟pdf扫描版深入理解linux驱动程序设计是一本linux系统驱动设计指导书籍,由吴国伟,姚琳,毕成龙编著。全书以基于Linux内核3.8.13源代码而编写,全面深入地论述了Linux设备驱动开发的全方位技术,揭秘Linux内核、驱动开发、驱动开发实例,主要内容包括
查看
Oracle学习笔记:日常应用深入管理性能优化89.07M李晓黎pdf扫描版 Oracle学习笔记:日常应用深入管理性能优化是一本Oracle数据库进阶学习书籍,由李晓黎编著。本书采用笔记的形式讲解,包含了数据库管理员所能遇到的绝大多数问题,从数据库日常维护到性能监测、分析和优化。全书通过知识点提醒、案例重现的形式,让读者轻
查看
javascript编程全解6.67M井上诚一郎pdf扫描版 javascript编程全解是一本JavaScript语言的使用指导手册,由日本程序员井上诚一郎、土江拓郎和滨边将太三人共同编著。本书涵盖了JavaScript开发中各个方面的主题,对从客户端及服务端JavaScript等基础内容,到HTML5、W
查看
html5权威指南电子书136.66Mpdf扫描版HTML5致力于为互联网开发者搭建更加便捷、开放的沟通平台,但如何入门呢?小编这里推荐用户阅读html5权威指南,这是一本html5语言的权威使用指南,也是全面详实的web网页设计参考书,贴心汇聚HTML5和CSS3 JavaScript,由美国程序员弗
查看
活出最乐观的自己pdf14.37M扫描版 活出最乐观的自己是由美国著名心理学家马丁.塞利格曼先生编著的一本积极心理学研究著作。该书将深奥的心理学研究与大众的日常生活融合在一起,能够独立帮助读者解决心理学上遇到的各种基础难题,高效、实用! 活出最乐观的自己主要提供了悲观者与乐观者
查看
起重机设计手册张质文pdf扫描版27.77M 起重机设计手册是由中国铁道工业出版社推出的起重机设计工具书。本书根据现行国家标准《起重机设计规范》(GB 3811—83)编写,并参考国际标准(IS0)近年来推荐的计算方法加以补充,可以独立解决用户对起重机设计的疑问,高效、实用! 起重
查看
第一本docker书33.72M特恩布尔pdf高清版 Docker是一个开源的应用容器引擎,让开发者可以将他们的应用和依赖包打包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。但如何才能更好的入门呢?这里小编带来了第一本docker书,这是全球第一本Docker技术图书,
查看
linux高级程序设计36.39M陈健 pdf扫描版linux高级程序设计是一本适合Linux初学者的指南,由美国Linux内核工程师美斯特和布卢两人共同编著,陈健等人翻译。本书涉及面非常广,从基本工具和技术的使用到lamp技术的介绍,从系统底层内核的剖析到网络、数据库编程,从gnome桌面环境到图形、音
查看
Eclipse从入门到精通陈刚PDF版84.37MEclipse从入门到精通陈刚PDF版是一款简单实用的PDF格式的Eclipse教程,全书共分为四篇,分别为起步篇,SWT/JFace篇,插件开发篇和Web开发篇。全书内容精简,去除了大量的冗余代码,含金量高,全面攻克java开发领域的前沿技术,极大地提
查看