python带单下划线的函数和双下划线的函数的区别
时间: 2024-04-26 13:25:42 浏览: 181
浅谈python 里面的单下划线与双下划线的区别
在Python中,带单下划线和双下划线的函数是有区别的。
带单下划线的函数通常被视为“保护函数”,这意味着它们不应该在类的外部被直接访问或调用。这些函数的命名约定是以单个下划线开头,例如:
- def _my_protected_function(self):
# protected function implementation
这些函数是可以在类的内部和子类中被访问和调用的,但是在类的外部直接调用它们是不推荐的。
带双下划线的函数通常被视为“私有函数”,这意味着它们在类的外部和子类中都不能直接访问或调用。这些函数的命名约定是以双下划线开头,例如:
- def __my_private_function(self):
# private function implementation
这些函数只能在类的内部被访问和调用,而且在类的外部和子类中是不能被直接访问和调用的。但是,通过类的公共接口可以间接地访问和调用私有函数。另外需要注意的是,Python实际上会将带双下划线前缀的函数名进行了名称修饰,以避免与子类中相同名称的函数冲突。
阅读全文