楼主: hnjyzdc
2224 3

[书籍介绍] Effective Python 编写高质量Python代码的59个有效方法 [推广有奖]

  • 1关注
  • 11粉丝

硕士生

47%

还不是VIP/贵宾

-

威望
0
论坛币
76088 个
通用积分
29.1255
学术水平
8 点
热心指数
18 点
信用等级
8 点
经验
4719 点
帖子
117
精华
0
在线时间
108 小时
注册时间
2016-1-27
最后登录
2021-7-12

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
Effective Python 编写高质量Python代码的59个有效方法 ,斯拉特金著 ,P212.pdf (35.52 MB, 需要: 66 个论坛币)
目录

本书赞誉
译者序
前言
致谢
第1章用Pythonic方式来思考1
第1条:确认自己所用的Python版本1
第2条:遵循PEP8风格指南3
第3条:了解bytes、str与unicode的区别5
第4条:用辅助函数来取代复杂的表达式8
第5条:了解切割序列的办法10
第6条:在单次切片操作内,不要同时指定start、end和stride13
第7条:用列表推导来取代map和f?ilter15
第8条:不要使用含有两个以上表达式的列表推导16
第9条:用生成器表达式来改写数据量较大的列表推导18
第10条:尽量用enumerate取代range20
第11条:用zip函数同时遍历两个迭代器21
第12条:不要在for和while循环后面写else块23
第13条:合理利用try/except/else/f?inally结构中的每个代码块25
第2章函数28
第14条:尽量用异常来表示特殊情况,而不要返回None28
第15条:了解如何在闭包里使用外围作用域中的变量30
第16条:考虑用生成器来改写直接返回列表的函数35
第17条:在参数上面迭代时,要多加小心37
第18条:用数量可变的位置参数减少视觉杂讯41
第19条:用关键字参数来表达可选的行为43
第20条:用None和文档字符串来描述具有动态默认值的参数46
第21条:用只能以关键字形式指定的参数来确保代码明晰49
第3章类与继承53
第22条:尽量用辅助类来维护程序的状态,而不要用字典和元组53
第23条:简单的接口应该接受函数,而不是类的实例58
第24条:以@classmethod形式的多态去通用地构建对象62
第25条:用super初始化父类67
第26条:只在使用Mix—in组件制作工具类时进行多重继承71
第27条:多用public属性,少用private属性75
第28条:继承collections.abc以实现自定义的容器类型79
第4章元类及属性84
第29条:用纯属性取代get和set方法84
第30条:考虑用@property来代替属性重构88
第31条:用描述符来改写需要复用的@property方法92
第32条:用__getattr__、__getattribute__和__setattr__实现按需生成的属性97
第33条:用元类来验证子类102
第34条:用元类来注册子类104
第35条:用元类来注解类的属性108
第5章并发及并行112
第36条:用subprocess模块来管理子进程113
第37条:可以用线程来执行阻塞式I/O,但不要用它做平行计算117
第38条:在线程中使用Lock来防止数据竞争121
第39条:用Queue来协调各线程之间的工作124
第40条:考虑用协程来并发地运行多个函数131
第41条:考虑用concurrent.futures来实现真正的平行计算141
第6章内置模块145
第42条:用functools.wraps定义函数修饰器145
第43条:考虑以contextlib和with语句来改写可复用的try/f?inally代码148
第44条:用copyreg实现可靠的pickle操作151
第45条:应该用datetime模块来处理本地时间,而不是用time模块157
第46条:使用内置算法与数据结构161
第47条:在重视精确度的场合,应该使用decimal166
第48条:学会安装由Python开发者社区所构建的模块168
第7章协作开发170
第49条:为每个函数、类和模块编写文档字符串170
第50条:用包来安排模块,并提供稳固的API174
第51条:为自编的模块定义根异常,以便将调用者与API相隔离179
第52条:用适当的方式打破循环依赖关系182
第53条:用虚拟环境隔离项目,并重建其依赖关系187
第8章部署193
第54条:考虑用模块级别的代码来配置不同的部署环境193
第55条:通过repr字符串来输出调试信息195
第56条:用unittest来测试全部代码198
第57条:考虑用pdb实现交互调试201
第58条:先分析性能,然后再优化203
第59条:用tracemalloc来掌握内存的使用及泄漏情况208


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:except 表达式 生成器 start 风格

已有 1 人评分热心指数 收起 理由
刘彦楼 + 5 精彩帖子

总评分: 热心指数 + 5   查看全部评分

本帖被以下文库推荐

沙发
windercn 发表于 2017-4-24 14:49:32 |只看作者 |坛友微信交流群
感谢分享!

使用道具

藤椅
jinpuxu 发表于 2017-4-25 08:35:53 |只看作者 |坛友微信交流群
感谢楼主分享

使用道具

板凳
刘彦楼 发表于 2017-4-25 14:57:24 |只看作者 |坛友微信交流群
感谢分享,编程的第一步是养成良好的习惯

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-26 22:39