python 枚举相等判断_一句话总结 改善Python程序的91个建议 的每个建议 (更新中)...

v2-142ed97e76416f7c18d2cadbb8b72e1f_1440w.jpg?source=172ae18b

此文章的目的为分享个人学习心得,与更多的人交流,一起进步,并非原创,只是对原书的梳理总结,封面图片来自网络,侵删。

格式

  1. 充分体现Python优势的代码风格,即为Pythonic,如交换赋值、迭代器、format()等

2. 遵守PEP8规则

3. 单双引号没有区别;哈希表实现switch case

4. 注释的必要性

5. 适当添加空行,每行不超过80字符

6. 函数4原则:减少嵌套;减少参数;参数设默认值;单一职责

7. 常量集中(大写命名,或导入const包)

习惯

8. assert应用于捕获用户所定义的约束,而非程序本身的

9. 交换值不使用中间量不仅使代码优雅,也加快运行速度

10. Lazy evaluation: if语句中如果存在and且前一个条件不满足的话,下一个条件不会进行计算,所以可以把可能为真概率最低的条件放在最前面,加速运行

11. 枚举类型:enum.Enum

12. 用isinstance()而非type()检查类型,防止继承带来的不合逻辑。

13. float一定要指明精度再做判断,因为float在计算机内部的存储规则使之无法准确表示而是无限接近

14. eval is evil

15. 同时需要索引和值时优先使用enumerate()

16. is为True表示两个变量指向同一个id地址,==为True表示值相等

17. Python2中需要声明 -*- coding: utf-8 -*- 支持unicode编码,Python3自动支持

18. 空 __init__.py 文件构建包,__init_.py可写入import语句使得子包的module可被直接导入,写入__all__变量可控制import *

基础

19.

36.

设计

50. 单例模式不一定要“实例唯一”,重要的是每个实例的状态相同即可,故用Borg模式取代Singleton模式

机制

54.

工具

70.

优化

79.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值