一:背景

用于规范化ocp python开发,对于使用python开发的程序使用统一的风格,便于代码的维护

二:python风格规范

  • 分号:不要在行尾加分号,也不要用分号将两条命令放在同一行
  • 括号:宁缺毋滥的使用括号。除非是用于实现行连接,否则不要在返回语句或者条件语句中使用括号,不过在元组两边使用括号是允许的
  • 缩进:用4个空格来代替缩进代码。绝对不要用tab,也不要tab和空格混用。对于行连接的情况,你应该要么垂直对齐换行的元素,或者使用4空格的悬进式缩进(这时第一行不应该有参数)
  • 空行:顶级定义之间空两行,比如函数或者类定义。方法定义,类定义与第一个方法之间,都应该空一行。函数或者方法中,某些地方要是你觉得合适,就空一行
  • 空格:按照标准的排版规范来使用标点两边的空格。括号内不要有空格;不要在逗号、分号、冒号前边加空格,但应该在它们后边加(除了在行尾);参数列表、索引或者切片的左括号不应加空格;在二元操作符两边都加上一个空格,比如赋值(=),比较(==, <, >, !=, <>, <=, >=, in, not in, is, is not),布尔(and, or, not)。至于算术操作符两边的空格该如何使用,需要你自己好好判断。不过两侧务必要保持一致;当’=’用于指示关键字参数或默认参数值时,不要在其两侧使用空格;不要用空格来垂直对齐多行间的标记,因为这会成为维护的负担(适用于:, #, =等)
  • 类:如果一个类不继承自其它类,就显示的从object类继承
  • 字符串:即使参数都是字符串,使用%操作符或者格式方法格式化字符串,不要使用+的方式
  • 导入方式:每个导入独占一行。导入总应该放在文件顶部,位于模块注释和文档字符串之后,模块全局变量和常量之前。导入应该按照最通用到最不通用的顺序分组:标准库导入;第三方库导入;应用程序指定导入,每个分组中应该根据每个模块的完整包路径按照字典顺序排序,忽略大小写
  • 语句:通常每个语句应该独占一行。如果测试结果与测试语句在一行放得下,也可以将它们放在一行。如果是if语句,只有在没有else时才能这样做。特别地,绝对不要对try/except这样做,因为try和except不能放在同一行。
  • 命名:ob_module_name ob_package_name ObClassName TestObClassName method_name test_method_name ExceptionName function_name GLOBAL_VAR_NAME instance_var_name function_parameter_name local_var_name
  • 其它点待后续补充

三:要求:

  • 代码修改后必须先跑pylint再发起review,pylint跑分要控制在90之上,对于一些显而易见的不合规范之处必须修正
  • pylint使用:在obztools目录下执行tools/pylint.sh file

四:参考:

Python代码规范的更多相关文章

  1. 老李分享:pep8 python代码规范

    老李分享:pep8 python代码规范 什么是PEPPEP是 Python Enhancement Proposal 的缩写,翻译过来就是 Python增强建议书 . PEP8 译者:本文基于 20 ...

  2. python代码规范与标准库参考

    python代码规范与标准库参考 python代码规范参考文献: http://www.runoob.com/w3cnote/google-python-styleguide.html https:/ ...

  3. Python代码规范问题及解决

    Python代码规范问题及解决 为了养成使用Python编程好习惯,尽量保证自己写的代码符合PEP8代码规范,下面是过程中报出的警告及解决方法,英文有些翻译不太准确见谅,会不断更新: PEP 8 只是 ...

  4. Python代码规范之---代码不规范,亲人两行泪

    任何语言的程序员,编写出符合规范的代码,是开始程序生涯的第一步! 关于代码规范 Python 官方提供有一系列 PEP(Python Enhancement Proposals) 文档 其中第 8 篇 ...

  5. Python代码规范(PEP8)问题及解决

    转载:https://blog.csdn.net/Jason_Lewis/article/details/75386598 最近刚刚接触Python,为了养成好习惯,尽量保证自己写的代码符合PEP8代 ...

  6. python代码规范整理

    规范参考源: 1.pep8(python代码样式规范):中文文档      https://blog.csdn.net/ratsniper/article/details/78954852 2.pep ...

  7. python代码规范 自动优化工具Black

    自动优化工具Black 在众多代码格式化工具中,Black算是比较新的一个,它***的特点是可配置项比较少,个人认为这对于新手来说是件好事,因为我们不必过多考虑如何设置Black,让 Black 自己 ...

  8. python代码规范以及函数注释规范

    摘要 本文给出主Python版本标准库的编码约定.CPython的C代码风格参见​PEP7.本文和​PEP 257 文档字符串标准改编自Guido最初的<Python Style Guide&g ...

  9. python代码规范和命名规范

    一.简明概述 1.编码 如无特殊情况, 文件一律使用 UTF-8 编码 如无特殊情况, 文件头部必须加入#-*-coding:utf-8-*-标识 2.代码格式 2.1.缩进 统一使用 4 个空格进行 ...

随机推荐

  1. java入门---windows和Linux,UNIX,Solaris,FreeBSD下开发环境配置

        首先来看Windows下的操作.我们需要下载java开发工具包JDK.下载地址:http://www.oracle.com/technetwork/java/javase/downloads/ ...

  2. python2中将Unicode编码的中文和str相互转换

    在python2x版本中 关于中文汉字转换 1.中文------字符串格式 >>> s = '汉字' >>> type(s) <type 'str'> ...

  3. HBase Scan,Get用法

    Scan,get用法 1. get help帮助信息 从下列get用法信息可以看出 get 后面可以跟table表名,rowkey,以及column,value.但是如果想通过get直接获取一个表中的 ...

  4. LeetCode:27. Remove Element(Easy)

    1. 原题链接 https://leetcode.com/problems/remove-element/description/ 2. 题目要求 给定一个整数数组 nums[ ] 和一个整数 val ...

  5. (转)Unreal Networking Guide Created by Zach Metcalf

        2. 3.                                                        

  6. 阿里云SLB上http强制跳转到https问题处理

    背景: 最近一客户有一个需求,需要将外网所有http访问请求强制跳转到https,公网出口使用阿里云SLB,证书放在SLB上,SLB后端实例为ECS(webserver)web服务使用nginx, 网 ...

  7. LINQ学习笔记——(2)Lambda表达式

    最基本的 Lambda 表达式语法: (参数列表)=>{方法体} 说明:   参数列表中的参数类型可以是明确类型或者是推断类型   如果是推断类型,则参数的数据类型将由编译器根据上下文自动推断出 ...

  8. Linux编译安装opencv

    参考https://blog.csdn.net/huang826336127/article/details/78760885 一.下载opencv源码包 下载地址:https://opencv.or ...

  9. [持续补充]开发过程中常见bug查找思路

    文件夹下载不下来或者无法访问,很多时候是因为没有该文件夹的权限,或者没有将该文件夹挂载到对应docker下. 远程服务器和本地服务器测试结果不同,需要排查代码是否是git上同一版本的代码. 代码相同, ...

  10. SourceTree git的管理工具使用教程1

    1SourceTree是一个window系统下的Git管理工具 2设置Git 工具——选项——Git设置 3拷贝远程的项目 新建/克隆(输入远程项目的url地址) 4验证(填写用户信息) 工具——选项 ...