详细介绍python3代码规范,小白秒懂,适合收藏
△ 第1 编码:
如无特殊情况, 文件一律使用 UTF-8 编码,放在代码第一行。
# -*- coding:utf-8 -*- #推荐这种#或者,下面这种#coding=utf-8 #但是不推荐
△ 第2 缩进:
统一使用 4 个空格进行缩进。
这是python的特色,严格执行,否则报错。
△ 第3 导入库或者模块:
1 格式:import 语句
2 示例:
import re, os , cv2 #不推荐#应该下面这种import reimport osimport cv2
3 这种特殊:
#不推荐from PIL import Imagefrom PIL import ImageFilter#推荐这种from PIL import Image, ImageFilter
△ 第4 注释:
1 单行注释
如:# 后面空一格,可以在上面,也可以在后面,也需要至少空一格。
# gca就是get current axes的意思ax=plt.gca() # 获取当前坐标轴
2 多行注释
# 3个单引号''' Copyright 2017 by Satya Mallick ( Big Vision LLC ) http://www.learnopencv.com'''#或者,不推荐# Copyright 2017 by Satya Mallick ( Big Vision LLC )# http://www.learnopencv.com# 重要注释建议这样格式# =====================================# 这条注释很重要 !!!# =====================================
3 文档注释(Docstring)
一般出现在模块头部、函数和类的头部。
这样在python中可以通过对象的__doc__对象获取文档;
编辑器和IDE也可以根据Docstring给出自动提示。
一般采用3个双引号,格式如下:
'''说明这是易三一世的python代码规范的小结。举例: 在代码的第一行,一定要首先注明编码风格 比如: # -*- coding:utf-8 -*- #推荐这种 如何调用该代码,推荐这种,在代码所在的文件夹下,打开终端输入: $ python example.py这份python代码的书写时间是2021.9.1 23:10.'''
# 正确的写法def pingjunzhi(x, y): '''计算并返回x到y范围内数据的平均值'''
请注意:3个双引号的注释是可以被说明和调用,起到外部解释作用,就像这样。
△ 第5 命名:
1 变量名:尽量小写, 如有多个单词,用下划线隔开。
good_girl=abad_boy=b
2 常量名:采用全大写,如有多个单词,使用下划线隔开。
GOOD_GIRL=100BAD_BOY=50
3 函数名:一律小写,如有多个单词,用下划线隔开。
def qiu_ping_jun_zhi(): pass
私有函数在函数前加一个下划线_。
class Boy(): def _private_good(): pass
4 类名:使用驼峰(CamelCase)命名风格,首字母大写。
class Boy(): pass class BadBoy(name): pass
5 模块名:尽量使用小写命名,首字母保持小写,尽量不要用下划线。
# 正确的模块名import goodgirl# 错误的模块名import Badboy
△ 第6 空行:
模块级函数和类定义之间空两行;
类成员函数之间空一行。
class Run: def __init__(self): # 类成员1 pass def good(self): # 类成员2 pass def main(): pass
△ 第7 空格:
1 在二元运算符两边各空一格[=,-,+=,==,>,in,is not, and]。
如:
# 正确的写法a = a + 1b += 1c = c * 2 + 3d = a * b + b * ce = (a + b) * (b - c)
2 函数的参数列表中,逗号(,)之后,是需要有空格。
# 正确的写法def plus_a_b(a, b): pass
3 函数的参数列表中,默认值等号两边不要添加空格。
# 正确的写法def plus_a_b(a, b=1.2): pass
4 左括号之后,右括号之前不要加多余的空格。
print(a)print(a=[1,2,3,4])
5 不要为对齐赋值语句而使用的额外空格。
#正确a = 2b = 5goodgirl = 100#错误a = 2b = 5goodgirl = 100
△ 第8 换行:
1 使用反斜杠\换行,长字符串多选用此法换行;二元运算符+ 和.等应该出现在行末。
# 长字符串换行1print('Today is a\ good day')# 长字符串换行2print( 'Today is a\ good day')# 带有运算符号的换行print('today, '\ '%s %s!' %\ ('good', 'day'))
2 Python 支持括号内的换行,注意整齐和整洁。
3 禁止复合语句,即一行中包含多个语句。
# 正确的写法do_first()a = 3ax.grid() # 不推荐的写法do_first(); a = 3; ax.grid();
△ 第9 引号:
1 自然语言:使用双引号 '...'。
a = 'a good girl'b = '一位美丽的女孩'
2 机器标识:使用单引号 '...'。
#例如 dict 里的 keydict = {'a': 1, '张三': 22, '天津': '300'} c = dict['b']
3 正则表达式:使用原生的双引号 '...'。
import re line = 'I love the gril' matchObj = re.match( r'(.*) are (.*?) .*', line, re.M|re.I)
4 文档字符串 (docstring) :使用三个双引号 '''......'''。
这个上面已经讲过了,很有特色的。
△ 第10 赋诗一首:代表原创
代码规范有讲究,
python love you。
书写整洁易读懂,
other people got。