• Python 代码规范


    1. 变量

    常量 : 大写加下划线 USER_CONSTANT

    私有变量:小写和一个前导下划线 _private_value
    Python中不存在私有变量一说,若是遇到需要保护的变量,使用小写和一个前导下划线。单这只是程序员之间的一个约定,用于警告说明这是一个私有变量,外部类不要去访问它。但实际上,外部类还是可以访问到这个变量。

    内置变量:小写,两个前导下划线和后置下划线 class
    两个前导下划线会导致变量在解释器件被更名。这是为了避免内置变量和其他变量产生冲突。用户定义的变量要严格避免这种风格。以免导致混乱。

    2. 函数和方法

    总体而言应该使用,小写和下划线。但有些比较老的库使用的是混合大小写,即首单词小写,之后每个单词第一个字母大写,其余小写,但现在, 小写和下划线已成为规范。

    私有方法:小写和一个前导下划线。

    这里和私有变量一样。并不是真正的私有访问权限。同时也应该注意一般函数不要使用两个前导下划线。

    特殊方法: 小写和两个前导下划线,两个后置下划线。 这种风格只应用于特殊函数,比如操作符重载。

    函数参数: 小写和下划线,缺省值等号两边无空格。

    3. 类

    类总是使用驼峰格式命名,即所有单词首字母大写其余字母小写。类名应该简明,精确,并足以从中理解类所完成的工作。常见的一个方法是使用表示其类型或者特性的后缀。
    例如:SQLEngine, MimeTypes, 对于基类而言,可以使用一个Base 或者 Abstract 前缀BaseCookie, AbstractGroup

    4. 模块和包

    除特殊模块 __init__之外,模块名称都使用不带下划线的小写字母。

    5. 关于参数

    1. 不要使用断言来实现静态类型检测。断言可以用于检查参数,但不应仅仅是进行静态类型。Python是动态类型语言,静态类型检查违背了其设计思想。断言应该用于避免函数不被毫无意义的调用。
    2. 不要滥用 args和**kwargs。args 和 **kwargs 参数可能会破坏函数的健壮性。它们使签名变得模糊,而且代码常常开始在不应该的地方构建小的参数解析器。

    6. 其他

    1. 使用 has 或 is 前缀命名布尔元素
      is_connect = True
      has_connect = False

    2. 用复数形式命名序列
      members = ['user_1', 'user_2']

    3. 用显式名称命名字典
      person_address = {'user_1': 10, 'user_2': 20}

    4. 避免通用名称
      诸如 list, dict, sequence ,或者 element 这样的名称应该避免

    5. 避免现有名称
      诸如 os, sys 这种系统已经存在的名称应该避免

    7. 一些数字

    一行列数: PEP8 规定为79列。根据自己的情况,比如不要超过满屏时编辑器的显示列数。
    一个函数:不要超过30行代码,即可显示在一个屏幕类,可以不使用垂直游标即可看到整个函数。
    一个类:不要超过200行代码, 不要有超过10个方法。一个模块不要超过500行。

  • 相关阅读:
    冰蝎,从入门到魔改
    红蓝对抗——加密Webshell“冰蝎”攻防
    DGA域名的今生前世:缘起、检测、与发展
    DNS隐藏隧道的使用
    DPI (Deep Packet Inspection) 深度包检测技术
    中国菜刀原理
    一句话木马和中国菜刀的结合拿webshell
    十大黑客工具之一——中国菜刀
    十大ATT&CK攻击技战术
    防守方新秘籍:MITRE 发布主动防御指导框架Shield
  • 原文地址:https://www.cnblogs.com/miss103/p/16013907.html
Copyright © 2020-2023  润新知