Shortcuts

代码风格指南

基本代码风格规则

DI-engine中,我们遵循以下基本代码规范:

  • 文件名总是用小写字母、数字和下划线命名,例如my_policy.py

  • 对于,应采用以大写字母开头的驼峰命名法,例如MyClass。此外,对于内部类,可以在开头使用额外的下划线,例如_InnerClass

  • 所有的函数方法都使用小写字母、数字和下划线命名,例如my_functionmy_method

  • 对于变量,它们都使用小写字母、数字和下划线命名,例如my_var

  • 对于属于类的方法和变量,使用单下划线表示受保护的继承关系,例如_protected_val。使用双下划线表示私有继承关系,例如__private_val

  • 对于方法参数的命名,如果是实例方法,第一个参数应命名为self。如果是类规则,第一个参数应命名为cls。请使用*args表示列表的可变长度参数,使用**kwargs表示键值参数。

  • 在命名变量时,如果名称与保留关键字、原生类等冲突,请在末尾加下划线以避免意外效果,例如 type_

yapf

对于yapf,我们可以使用现有的Makefile进行一键修复

make format

考虑到整个项目的规模较大且文件数量众多,您可以使用以下命令来检查特定路径下源代码文件的代码设计

make format RANGE_DIR=./ding/xxx

在这个项目中,我们使用了基于PEP8的yapf配置代码规范配置。有关配置的详细信息,您可以参考Github主页上的描述PEP8是Python官方推荐的代码风格配置。关注代码风格可以提高代码的可读性,并尽量减少意外行为。

此外,yapf 还可以通过插件 yapf pycharm 与 pycharm 集成:

flake8

对于flake8,我们可以使用现有的Makefile来检查代码设计

make flake_check

考虑到整个项目的规模较大且文件数量众多,您可以使用以下命令来检查特定路径下源代码文件的代码设计

make flake_check RANGE_DIR=./ding/xxx

在这个项目中,我们使用了基于pep8的flake8代码设计规范配置。有关配置的详细信息,请参考flake8官方文档的描述PEP8是python官方推荐的代码风格配置。关注代码风格可以提高代码的可读性,并尽量减少不符合预期的行为。

合理的导入顺序

考虑到PEP8标准和使用习惯,我们建议用户使用以下导入顺序:

  • 标准库导入

  • 相关的第三方导入

  • 本地应用程序/库特定的导入

  • 相对导入

例如。

from xx import xx
import xx
import ding.xx
from .xx