PEP代码规范简单总结
PEP代码规范
1 当一个判断条件太长以致于要换行的时候,可以使用()
将他们括起来,更好的可读性。()
会隐式的将他们连接起来
if 'a' == 'bba' and 'b' in ['bb','sds'] and isinstance('c',str) or a+b <= 10:print('sss') # 可以改写为以下代码 if ('a' == 'bba' and 'b' in ['bb','sds'] and isinstance('c',str) or a+b <= 10):print('sss')
2 注释不需要强行对齐,因为这会增加维护的难度
3 代码注释不需要描述代码,只需要说代码大概是干嘛的
4 如果一个类不继承其他类,就显式的从object继承
- 继承自object是为了使属性(properties)正常工作,可以保护代码
5 对于字符串的累加,避免在循环中使用 +
或 +=
进行字符串累加
由于字符串是不可变的,这样做会创建不必要的临时对象,并且导致二次方而不是线性的运行时间。
作为替代方案,可以将每个字符串加入列表,然后再循环结束后用
join()
连接列表,也可以将每个字符串写入一个cStringIO.StringIO
缓存中Yes
item = ['<table>'] for last_name, first_name in employee_list:items.append('<tr><td>%s, %s</td></tr>' % (last_name, first_name)) item.append('</table>') employee_table = ''.join(items)
No
employee_table = '<table>' for last_name, first_name in employee_list:employee_table += '<tr><td>%s, %s</td></tr>' %(last_name, first_name) emplyee_table += '</table>'
6 文件和sockets
- 1在文件和sockets结束时,显示的关闭它
- 使用
with
语句以管理文件,会调用类中的__enter__()
和__exit__()
方法。- 对于不支持使用
with
语句的类似文件的对象,使用contextlib.closing()
语句
- 对于不支持使用
7 TODO注释
为了更好的记录临时代码,以及为了将来更好的找到哪些代码被标记了待处理,可以使用以下格式进行记录
可以添加邮箱、姓名、以及日期,为了更好的检索
# TODO(dujuntong33@163.com):这行代码有xx问题,还有什么xx问题没有处理 # TODO(dujuntong):xxxx #TODO(2021年4月解决)
8 导入格式
每个导入应该独占一行
Yes:import osimport sys
No:import os,sys
导入应该按照从最通用到最不通用的顺序分组
- 1 标准库导入
- 2 第三方库导入
- 3 应用程序指定导入
9 命名规范
Type | Public | Internal |
---|---|---|
Modules | lower_with_under | _lower_with_under |
Packages | lower_with_under | |
Classed | CapWords | _CapWords |
Exceptions | CapWords | |
Functions | lower_with_under() | _lower_with_under() |
Global/Class Constants | CAPS_WITH_UNDER | _CAPS_WITH_UNDER |
Global/Class Variables | lower_with_under | _lower_with_under |
Instance Variables | lower_with_under | _lower_with_under(protected) or __lower_with_under(private) |
Method Names | lower_with_under() | _lower_with_under()(protected) or __lower_with_under()(private) |
Function/Method Parameters | lower_with_under | |
Local Variables | lower_with_under |
- 使用下划线(
_
)开头表示模块变量或函数是protected的(使用import * from 时不包含) - 双下划线(
__
)开头的实例变量或方法表示类内私有
10 Main
代码应该在执行主程序前总是检查
if __name__ == '__main__'
,这样当模块被导入时主程序就不会被执行def main():...if __name__ == '__main__':main()
PEP代码规范简单总结相关推荐
- python代码规范工具_Python代码规范Flake8的简单示例
这篇文章主要为大家详细介绍了Python代码规范Flake8的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! ...
- PEP 8 -- Style Guide for Python Code。Python 代码规范。
PEP 8 – Style Guide for Python Code 文章目录 PEP 8 -- Style Guide for Python Code 代码规范. PEP8 (pycodestyl ...
- Python基础day01【软件安装、变量的定义和使用、数据类型、标识符和关键字、输入输出、数据类型转换、运算符、PEP 8 规范】
视频.源码.课件.软件.笔记:超全面Python基础入门教程[十天课程]博客笔记汇总表[黑马程序员] 学习目标: 能够说出计算机有哪两部分组成 能够说出操作系统的作用 能够说出编程语言的作用 ...
- 你写的Python代码规范吗?
总第141篇/张俊红 1.什么是PEP8 PEP 是 Python Enhancement Proposals 的缩写,直译过来就是「Python增强建议书」也可叫做「Python改进建议书」,说的直 ...
- Python学习22:Python之禅和PEP 8规范
笔者:风起怨江南 出处:https://blog.csdn.net/JackMengJin 笔者原创,文章转载需注明,如果喜欢请点赞+关注,感谢支持! 导读:Python之禅和PEP 8规范,值得所有 ...
- 走进PEP8——代码规范
最近一直在强调代码规范,但是有很多朋友不太清楚,我到底要怎么抒写代码,才算是规范呢? 所以,老Amy就在考虑,好记性不如烂笔头,反复强调不如一篇文章反复查阅.hhhh~ 那什么是代码规范呢?代码规范也 ...
- Python之代码规范管理工具(pylint、black)
参考链接 在之前<使代码整洁的几种规范>文章中,介绍了比较常用的变量.函数等定义方法,本文专门针对 python 的代码风格进行介绍,主要用到两个超牛的工具 pylink 和 black, ...
- Python 代码规范
前言 Python 学习之旅,先来看看 Python 的代码规范,让自己先有个意识,而且在往后的学习中慢慢养成习惯 目录 Python代码规范 一.简明概述 1.编码 如无特殊情况, 文件一律使用 U ...
- php团队规范,简单的PHP团队编程规范与习惯
简单的PHP团队编程规范与习惯 2年前 阅读 3259 评论 0 喜欢 1 ####1.PHP 编程规范与编码习惯最主要的有以下几点: 1.文件说明 2.Function 函数体说明 3.代码缩进 4 ...
最新文章
- Java基础教程——包装类
- python生成器使用场景桌面_Python – 如何更简洁地使用生成器?
- .NET Core使用gRPC打造服务间通信基础设施
- Flutter实战视频-移动电商-45.详细页_说明区域UI编写
- Asp.Net防止刷新重复提交数据的办法
- git生成SSH密钥提示ssh文件不存在-已解决
- 【李宏毅2020 ML/DL】P67-72 Anomaly Detection
- 30个超实用Python代码片段
- mbstring未安装
- 自动控制原理第七版胡寿松pdf_自动控制原理简明笔记—(01)
- 用手机当电脑摄像头——Droidcam
- 使用CNN实现C-MAPSS数据集里面的剩余寿命预测(Pytorch)
- SPSS多元线性回归分析看标准化还是非标准化系数?
- 台式win10怎么开启无线服务器,无线网卡怎么用? win10系统台式机安装无线网卡的详细教程...
- 计算机软件比赛团队名称,辩论赛 | 最佳人气团队评选
- 摄氏度和开氏度的换算_摄氏温度和华氏、开氏温度_温度表示符号及单位换算...
- 3.Elasticsearch-查询的多种方式
- coursera—Mini-project #1 - Rock-paper-scissor-lizard-Spock
- ps学习之立体字设计
- WPS格式文件转换图片格式如何实现