详解python的命名规则

详解python的命名规则
最新回答
舟遥客

2023-07-20 21:02:23

Python命名规则详解如下

1. 常量命名

  • 规则:使用全大写字母,单词间用下划线连接(如BASE_DIR)。
  • 用途:表示不可变的配置值(如Django的SECRET_KEY、DEBUG等)。
  • 建议:将常量集中存储在单独文件(如settings.py)或使用ConfigParser模块管理。

2. 变量命名

  • 公有变量:小写字母加下划线(如user_name)。
  • 私有变量:单下划线前缀(如_private_var),提示“仅内部使用”。
  • 模块级私有变量:双下划线前缀(如__internal_var),触发名称修饰(Name Mangling),避免子类冲突。

3. 函数与方法命名

  • 常规方法:小写加下划线(如calculate_sum())。
  • 私有方法:双下划线前缀(如__private_method()),运行时会被重命名为_ClassName__method。
  • 特殊方法:双下划线开头和结尾(如__init__()、__str__()),用于运算符重载或内置行为。

4. 类命名

  • 规则:驼峰式(首字母大写,无下划线,如SQLAlchemy、BaseCookie)。
  • 注意:避免与关键字冲突(如Class需改为MyClass)。

5. 模块与包命名

  • 规则:全小写,可选单下划线(如urllib.request、sqlite3)。
  • 私有模块:单下划线前缀(如_internal_module.py)。
  • 包目录:通常与主模块同名(如pip包包含pip/__init__.py)。

6. 其他命名场景

  • 布尔变量:前缀is_或has_(如is_connected、has_cache)。
  • 复数集合:显式命名(如users = ['Alice', 'Bob'])。
  • 字典键:全称描述(如persons_addresses = {'Alice': 'NY'})。

7. 参数与属性

  • 参数:全小写,可选下划线(如file_path)。
  • 属性:同变量命名(如self.user_age)。

关键原则

  • 一致性:遵循项目或社区约定(如PEP 8)。
  • 可读性:避免缩写,优先使用完整单词(如get_user_id而非get_uid)。
  • 名称修饰:双下划线前缀的私有成员可通过_ClassName__method访问(不推荐直接使用)。

通过遵循这些规则,代码可读性和可维护性将显著提升。