Python_代码风格_合理分解代码,提高代码可读性

一.什么是PEP8

PEP 是 Python Enhancement Proposal 的缩写,翻译过来叫“Python 增强规范”。正如我们写文章,会有句式、标点、段落格式、开头缩进等标准的规范一样,Python 书写自然也有一套较为官方的规范。PEP 8 就是这样一种规范,它存在的意义,就是让 Python 更易阅读,换句话,增强代码可读性。

二.日常的代码规范

缩进规范

  • Python 的缩进其实可以写成很多种,Tab、双空格、四空格、空格和 Tab 混合等。而 PEP 8 规范告诉我们,请选择四个空格的缩进,不要使用 Tab,更不要 Tab 和空格混着用。
  • 第二个要注意的是,每行最大长度请限制在 79 个字符。这条规定另一方面也在制约着程序员,不要写迭代过深的代码,而是要思考继续把代码分解成其他函数或逻辑块,来优化自己的代码结构。

空行规范

  • 全局的类和函数的上方需要空两个空行
  • 类的函数之间需要空一个空行
  • 函数内部也可以使用空行,和英语的段落一样,用来区分不同意群之间的代码块。但是记住最多空一行,千万不要滥用。
  • 即使是使用控制语句 if / while / for,你的执行语句哪怕只有一行命令,也请另起一行,这样可以更大程度提升阅读效率。
  • 至于代码的尾部,每个代码文件的最后一行为空行,并且只有这一个空行。

空格规范

  • 函数的参数列表中,调用函数的参数列表中会出现逗号,请注意逗号后要跟一个空格,这是英语的使用习惯,也能让每个参数独立阅读,更清晰。
  • 冒号经常被用来初始化字典,冒号后面也要跟一个空格。
  • Python 中我们可以使用#进行单独注释,请记得要在#后、注释前加一个空格。
  • 对于操作符,例如+,-,*,/,&,|,=,==,!=,请在两边都保留空格。不过与此对应,括号内的两端并不需要空格。

换行规范

控制每行的最大长度不超过 79 个字符,但是有时候,函数调用逻辑过长而不得不超过这个数字时,该怎么办呢?

  • 第一种,通过括号来将过长的运算进行封装,此时虽然跨行,但是仍处于一个逻辑引用之下。
  • 第二种,则是通过换行符来实现。

文档规范

  • 所有 import 尽量放在开头
  • 不要使用 import 一次导入多个模块
  • 如果你=采用 from module import func 这样的语句,请确保 func 在本文件中不会出现命名冲突

注释规范

改动代码的时候,一定要注意检查周围的注释是否需要更新。

文档描述

至于 docstring 的写法,它是用三个双引号开始、三个双引号结尾。我们首先用一句话简单说明这个函数做什么,然后跟一段话来详细解释;再往后是参数列表、参数格式、返回值格式。

命名规范

  • 变量名请拒绝使用 a b c d 这样毫无意义的单字符,我们应该使用能够代表其意思的变量名。
  • 一般来说,变量使用小写,通过下划线串联起来,例如:data_format、input_spec、image_data_set。
  • 唯一可以使用单字符的地方是迭代,比如 for i in range(n) 这种,为了精简可以使用。
  • 如果是类的私有变量,请记得前面增加两个下划线。
  • 对于常量,最好的做法是全部大写,并通过下划线连接,例如:WAIT_TIME、SERVER_ADDRESS、PORT_NUMBER。
  • 对于函数名,同样也请使用小写的方式,通过下划线连接起来,例如:launch_nuclear_missile()、check_input_validation()。
  • 对于类名,则应该首字母大写,然后合并起来,例如:class SpatialDropout2D()、class FeatureSet()。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值