Python学习笔记——关于编程代码风格(命名规范、PEP 8、检查代码是否符合PEP 8、pycodestyle工具)

命名风格

Python编程社区普遍认可的约定:

  • 函数用小写字母+下划线命名
    count_from_by()是一个函数调用
  • 类用 CamelCase形式命名(各个单词的首字母大写)
    CountFromBy()会创建一个对象

关于编程风格:遵循PEP的最佳实践

关于代码编程风格, Python编程社区已经花了很长时间来建立最佳实践,并提供了相应的文档说明。这个最佳实践名为PEP 8

PEP是“ Python增强协议”( Python Enhancement Protocol)
网址:https://www.python.org/dev/peps/

PEP 8是 Python代码的风格指南。建议所有 Python程序员都要阅读
(例如对字符串统一使用'包围)
另外一个文档PEP 257描述了格式化 docstring的有关约定,也很有必要读一读。

检查代码是否符合PEP 8

Python编程社区花了大量时间来创建开发工具,让 Python程序员能够更加轻松

  • pytest工具是一个测试框架,主要用来测试 Python程序
    不论你编写什么类型的测试, pytest都能提供帮助
  • pytest可以增加插件,以扩展其功能
  • pep8就是一个pytest插件,使用 pytest测试框架检查你的代码是否违反PEP8

安装pytest和pep8插件

(在联网状态下)可以在系统命令行使用pip工具安装第三方库

打开命令行,输入以下指令

#调用Python 3,打开pip工具,安装第三方库
C:\Users\13272>py -3 -m pip install pytest
C:\Users\13272>py -3 -m pip install pytest-pep8

测试代码的PEP 8兼容性

安装了pytest和pep8后,现在可以测试代码的PEP8兼容性了

在目标xxx.py程序所在文件夹中长按shift键,同时单击鼠标右键,在菜单中选择Open Command window here(在这里打开命令PowerShell窗口)在这个命令提示窗口中键入下面的命令:

py.test --pep8 xxx.py 或 pep8 xxx.py

2021.10.20更新:pep8已经改名为pycodestyle

pep8 has been renamed to pycodestyle (GitHub issue #466)
Use of the pep8 tool will be removed in a future release.
Please install and use pycodestyle instead.

如今检查代码风格的工具已改用为pycodestyle

安装pycodestyle工具

#调用Python 3,打开pip工具,安装第三方库
C:\Users\13272>py -3 -m pip install pycodestyle

使用pycodestyle检查代码风格
在目标xxx.py程序所在文件夹中长按shift键,同时单击鼠标右键,在菜单中选择Open Command window here(在这里打开命令PowerShell窗口)在这个命令提示窗口中键入下面的命令:

pycodestyle xxx.py

一个用例如下

PS C:\Users\13272\Desktop> pycodestyle mystery.py
mystery.py:7:1: E302 expected 2 blank lines, found 1#7行处应该有两个空行(两函数间)
mystery.py:9:8: E225 missing whitespace around operator#9行处操作符两边应该有空格

符合PEP 8很有意义

一致性很有意义。如果你的代码符合一种标准的编码风格,就说明你的代码更易读,因为它“看起来像”程序员看到的其他代码。

从现在开始,要尽量保证你的代码遵循PEP8原则

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值