Python代码规范
- 编程
- 2023-02-10
1. 一致性的建议
打破一条既定规则的两个好理由
当应用这个规则将导致代码可读性下降,即使对于某人来说他已经习惯于按照这条规则来阅读代码了
为了和周围的代码保持一致而打破规则(也许是历史原因)
2. 代码的布局
缩进
4个空格
代码行
行最大长度 : 79字符
推荐长度 : 72字符
分割方式 : "" , "()" , "{}"
空行
两行空行分割顶层函数和类的定义
一行空行分割方法或函数
额外空行分割相关函数群
类定义与第一个方法定义需要一行空行
编码
万年 "UTF-8"
导入
先import标准模块,再from ... import第三方模块(绝对路径) ,最后from ... import自建模块
每组导入空一行,一行导入一个包[模块,类等]
空格
紧贴各类括号
紧贴逗号,分号,冒号前
紧贴函数调用参数列表前开放式括号
紧贴再索引或切片括号
二元操作符或运算符或逻辑等两边各留一个空格
默认参数或关键参数"="不留空格
3. 注释
注释块
与相应代码有着相同缩进
行内注释
与代码被注释代码同行,以"#"+" "开头
文档注释
结尾处 """ 单独成行
版本注记
模块文档字符串之后,所有代码之前,上下空行分割
4. 命名
约定
模块名 : 不含下划线 ; 小写 ; 剪短
类名,异常名 : 首字母大写单词串
方法,函数 : 第一个字母小写的首字母大写单词串
属性,实例,变量 : 小写字母串
继承
私有 : 双下划线开头
非公有 : 单下划线开头
命名冲突
不降低可读性,能改就改,不能就在末尾加单个下划线或者数字
5. 设计建议
使用"is"或"is not"进行对"None"的单值比较
使用字符串方法代替字符串模块
使用startswith()和endswith()检查前后缀而不是使用切片
使用isinstance()判断对象是否是字符串而不是使用type()
判断空序列或字典不要使用len()
书写字符串文字不要依赖有意义的后置空格
不要用"=="比较布尔值
文章转自:http://www.cnblogs.com/erliang/p/4065605.html
- 初学者学习python2还是python3?
- python获取本机IP、mac地址、计算机名
- 详解python2 和 python3的区别
- python基础之删除文件及删除目录的方法
- 用python求第1000个质数的值
- python常用函数年初大总结
- Python3 - 时间处理与定时任务
- Python开发的CMS系统,Silva CMS 3 发布
- python基础之使用os.system来执行系统命令
- 判断python字典中key是否存在的两种方法
- 初学者学习python2还是python3?
- python基础之删除文件及删除目录的方法
- python获取本机IP、mac地址、计算机名
- python获取系统时间(时间函数详解)
- 详解python2 和 python3的区别
- 用python求第1000个质数的值
- Python3 - 时间处理与定时任务
- 命令行看糗百
- Python算法之---冒泡,选择,插入排序算法
- python 中求和函数 sum详解
- range方法在Python2和Python3中的不同
- python3 数组(列表)初始化
- 记一次crontab中date命令错用导致的问题
- MySQL用LIKE特殊字符搜索
- CentOS 7 下修改主机名
- Python3正则表达式之:(?(id/name)y...
- TIOBE编程语言排行榜2019年 Python稳居前三
- 解压命令unzip常用方法汇总
- 解析redis备份文件rdb的两种方法及对比
- 百度视觉语义化平台2.0:交互升级和...
- 5G时代的视觉语义化技术:软硬结合...
- 百度AutoDL重磅升级至3.0:设计、迁...