编码规范

发布于:2024-05-20 ⋅ 阅读:(146) ⋅ 点赞:(0)

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

下面给出两段实现同样功能的代码,如图10所示。

   

图10  两段功能相同的Python代码

图10中右侧的代码段看上去比左侧的代码段更加规整,阅读起来也会比较轻松、畅快,这是一种最基本的代码编写规范。遵循一定的代码编写规则和命名规范可以使代码更加规范化,对代码的理解与维护都会起到至关重要的作用。

编写规则

Python中采用PEP 8作为编码规范,其中PEP是Python Enhancement Proposal(Python增强建议书)的缩写,而“PEP 8”中的“8”表示版本号。PEP 8是Python代码的样式指南。下面给出PEP 8编码规范中的一些应该严格遵守的条目。

l  每个import语句只导入一个模块,尽量避免一次导入多个模块。如图11所示的推荐写法,而图12所示的代码为不推荐的写法。

图11  推荐写法

图12  不推荐写法

l  不要在行尾添加分号“;”,也不要用分号将两条命令放在同一行。图13所示的代码为不规范的写法。

图13  不规范写法

l  建议每行不超过80个字符,如果超过,建议使用小括号“()”将多行内容隐式的连接起来,而不推荐使用反斜杠“\”进行连接。例如,如果一个字符串文本不能在一行上完全显示,那么可以使用小括号“()”将其分行显示,代码如下:

s=("我一直认为我是一只蜗牛。我一直在爬,也许还没有爬到金字塔的顶端。"

      "但是只要你在爬,就足以给自己留下令生命感动的日子。")

以下通过反斜杠“\”进行连接的做法是不推荐使用的:

s="我一直认为我是一只蜗牛。我一直在爬,也许还没有爬到金字塔的顶端。\

但是只要你在爬,就足以给自己留下令生命感动的日子。"

不过以下两种情况除外:

Ø  导入模块的语句过长。

Ø  注释里的URL。

l  使用必要的空行可以增加代码的可读性。一般在顶级定义(如函数或者类的定义)之间空两行,而方法定义之间空一行。另外,在用于分隔某些功能的位置也可以空一行。

l  通常情况下,运算符两侧、函数参数之间、“,”两侧建议使用空格进行分隔。

l  应该避免在循环中使用“+”和“+=”运算符累加字符串。这是因为字符串是不可变的,这样做会创建不必要的临时对象。推荐将每个子字符串加入列表,然后在循环结束后使用join()方法连接列表。

l  适当使用异常处理结构提高程序容错性,但不能过多依赖异常处理结构,适当的显式判断还是必要的。

说明:在编写Python程序时,建议严格遵循PEP 8编码规范。完整的Python编码规范请参考PEP 8。

命名规范

命名规范在编写代码中起到很重要的作用,虽然不遵循命名规范,程序也可以运行,但是使用命名规范可以更加直观地了解代码所代表的含义。本节将介绍Python中常用的一些命名规范。

l  模块名尽量短小,并且全部使用小写字母,可以使用下划线分隔多个字母。例如,game_main、game_register、bmiexponent都是推荐使用的模块名称。

l  包名尽量短小,并且全部使用小写字母,不推荐使用下划线。例如,com.mingrisoft、com.mr、com.mr.book都是推荐使用的包名称,而com_mingrisoft就是不推荐的。

l  类名采用单词首字母大写形式(即Pascal风格)。例如,定义一个借书类,可以命名为BorrowBook。

l  模块内部的类采用下划线“_”+Pascal风格的类名组成。例如,在BorrowBook类中的内部类,可以使用_BorrowBook命名。

l  函数、类的属性和方法的命名规则同模块类似,也是全部使用小写字母,多个字母间用下划线“_”分隔。

l  常量命名时全部使用大写字母,可以使用下划线。

l  使用单下划线“_”开头的模块变量或者函数是受保护的,在使用 from ××× import *语句从模块中导入时这些变量或者函数不能被导入。

l  使用双下划线“__”开头的实例变量或方法是类私有的。


网站公告

今日签到

点亮在社区的每一天
去签到