【Python】Python中变量或者函数加下划线‘_‘的含义

在Python中,变量或函数前面加一个下划线(_)通常用来指示特定的编程约定或用法,这些约定主要关乎变量和函数的可访问性以及预期的使用范围。以下是一些常见的用法:

  1. 单下划线前缀 (_variable):

    • 私有性: 单个下划线前缀的变量或函数通常用于表示“私有”的,意味着这些变量或函数不应该被外部直接访问。在Python中,这种私有性是基于约定的(非强制性的),外部仍可以访问这些变量和函数。
    • 内部使用: 这种约定通常用于模块或类内部,表示变量或方法主要用于内部逻辑,而不是作为API的一部分暴露给外部。
  2. 单下划线后缀 (variable_):

    • 避免命名冲突: Python中的关键字不能作为变量名。如果你需要使用一个可能与Python关键字冲突的名称,可以在名称后加一个下划线来避免这种冲突。例如,使用class_而不是class
  3. 双下划线前缀 (__variable):

    • 名称改编(Name Mangling): 在类的上下文中,使用双下划线前缀可以触发Python的名称改编特性,该特性意在限制变量或函数的访问范围。这通常用于类的私有成员。Python解释器改写变量名,加入类名作为前缀,从而使得从类外部直接访问这些变量或方法变得困难。
    • 避免子类覆盖: 双下划线的使用有助于避免在子类中意外覆盖基类的方法。
  4. 双下划线前后缀 (__variable__):

    • 特殊方法或属性: 这种形式的变量通常指代Python的特殊方法或属性(也称作“魔法”方法或属性),例如__init____str____len__等。这些是Python预定义的方法,用于实现特定的语言构造或功能。通常不建议开发者定义新的这种形式的变量。

理解这些约定可以帮助Python开发者编写更清晰、更Pythonic的代码,并理解其他Python代码中的命名习惯。

你可能感兴趣的:(Python,python,开发语言)