对于每一门语言来说,都有自己的编码规则,编程时是不可以违背这些准则的,一旦不遵守这个准则,程序就会报错无法执行,本节将介绍下python的一些编码规则。
1、代码缩进与冒号
- 首先介绍下代码缩进有什么用处,代码缩进是指通过在一行代码的前输入若干空格或者制表符来表示行与行之间的层次关系,每一种编程语言一般都需要代码缩进进行规范程序代码的层次结构,让代码清晰易于解读。对于其它的语言来说,代码缩进作为一种良好的编程习惯而延续下来。
- 在python中,代码缩进是一种语法,python语言中没有采用花括号或begin…end来分隔代码块,而是使用冒号和代码缩进来区别代码之间的层次。
例如:
time = 16
if(time == 16):
print("16") #代码缩进
else:
print("18") #代码缩进
说明:python对代码缩进要求和严格,如果程序中没有采用代码缩进的编程风格,程序将会抛出一个IndentationError的异常信息。应统一下代码书写规则,代码前的空格数保持一致,最好使用4个空格缩进。
注意:不同的代码缩进执行的结果不同。因此,当程序出现问题时,首先需要检查代码的书写是否正确,如果正确再检测代码缩进是否合理。
2、使用空行分隔代码
- 函数与函数之间或者类与类之间用空行分隔,表示一段新的代码的开始。类和函数入口之间用一行空行分隔,以突出函数入口的开始。
python中用两行空行分隔顶层函数和类的定义,类内方法的定义用两个空行分隔,额外的空行可用于分隔相关函数组成的群,在一组相关的单句中间可以省略空行。当空行用于分隔类中方法的定义时,在class行和第一个方法定义之间也要有一个空行。在函数中使用空行,表示一个逻辑段落。
注意:python中的空行与代码缩进是完全不同的概念,空行并不是python语法的一部分,只是程序代码的一部分,书写时不插入空行,python解释器运行时正常的,但是空行的作用在于分隔两段不同功能或者不同含义的代码,以便于程序的后期维护或重构。
3、命名规则
- 3.1 包、模块的命名规则
python语言中的包名与java语言中包的命名规则是相同的,全部以小写字母的形式来命名。模块名应该是不含下划线、简短、小写字母这些规则来命名的,因为模块名被映射到文件名,有些文件系统对大小写不敏感并且会截取比较长的名字。例如
Filename:pythonModule.py
该语句声明了一个模块的名称,模块名全部用小写字母组成。
- 3.2 类、对象的命名规则
python 中的类名采用CapWords约定,即每个单词的首字母要大写,其他字母小写,例如MyStudent。对象名用小写字母来表示。类的私有属性、私有方法以两个下划线作为前缀,对象通过点操作符来访问类中的属性和方法。例如下面的代码:
class MyClass: #类名中的每个单词的首字母大写,其他小写
__username="" # 私用属性前必须使用两个下划线为前缀
def __init__(self.username):
self.__username=username #self相当于Java语言中的this关键字,表示本类
def getUserName(self): # 方法名的首字母小写,其后每个单词的首字母要大写
return self.__username
if __name__ == "__main__":
myclass = MyClass('admin') #对象名用小写字母
print(myclass.getUserName())
- 3.3 函数的命名规则
- 函数名必须以下划线或字母开头,可以包含任意的字母、数字或下划线的组合。
- 函数名是区分大小写的。
- 函数名不能是保留字。
4、为代码添加注释
- 4.1 单行注释
单行注释使用#号若干空格开始,后面是注释的内容,以回车作为注释的结束。
例如:
# 声明并初始化变量 num
num = 1
- 4.2、注释块
注释块通常应用于跟随一些(或者全部)代码有着相同的缩进层次。注释块中也使用#号和一个空格开始。注释块内的段落以仅单个#的行分隔。