ps:遵循一定的代码编写规则和命名规范可以使代码更加规范化,对代码的理解和维护起到至关重要的作用。
编写规范
- 每个import语句只导入一个模块,尽量避免一次导入多个模块。
#推荐写法
import os
import sys
#不推荐写法
import os, sys
- 不要在行尾添加分号";",也不要用分号将两条命令放在同一行。
#推荐写法
a = 10
print("a:{0}".format(a))
#不推荐写法
a = 10; print("a:{0}".format(a));
- 建议每行不超过80个字符,如果超过,建议使用小括号"()"将多行内容隐式地连接起来,而不推荐使用反斜杠“\”进行连接。不过以下两种情况除外:导入模块的语句过长;注释里的URL。
#推荐写法
print("天青色等烟雨 而我在等你; 炊烟袅袅升起 隔江千万里; "
"在瓶底书汉隶仿前朝的飘逸; 就当我为遇见你伏笔")
#不推荐写法
print("天青色等烟雨 而我在等你; 炊烟袅袅升起 隔江千万里; \
在瓶底书汉隶仿前朝的飘逸; 就当我为遇见你伏笔")
- 使用必要的空行可以增加代码的可读性。一般在顶级定义(如函数或者类的定义)之间空两行,而方法定义之间空一行。另外,在用于分隔某些功能的位置也可以空一行。
- 通常情况,运算符两侧、函数参数之间、逗号“,”两侧建议使用空格进行分隔。
- 应该避免在循环中使用+和+=操作符累加字符串。这是因为字符串是不可变的,这样做会创建不必要的临时对象。推荐的做法是将每个子字符串加入列表中,然后在循环结束后使用join()方法连接到列表。
- 适当使用异常处理结构提高程序容错性,但不能过多依赖异常处理结构,适当的显式判断还是必要的。
命名规范
- 模块名尽量短小,并且使用全部小写字母,可以使用下划线分隔多个字母。例如:game_main、game_register、bmiexponent。
- 包名尽量短小,并且使用全部小写字母,不推荐使用下划线。例如:com.mingrisoft、com.mr、com.mr.book。
- 类名采用单词首字母大写形式。例如:定义一个借书类,可以命名未BorrowBook。
- 模块内部的类采用下划线“_”+单词首字母大写组成。例如:在BorrowBook类中的内部类,可以使用_BorrowBook命名。
- 函数、类的属性和方法的命名规则同模块类似,也是全部采用小写字母,多个字母间用下划线“_”分隔。
- 常量命名时采用全部大小写字母,可以使用下划线。
- 使用双下划线“__”开头的实力变量或方法是类私有的。