Skip to main content
 首页 » 编程设计

python之为什么只在公共(public)函数中调用私有(private)函数

2025年05月04日23Terrylee

我在神话般的源代码中徘徊python-chess当我看到以下代码时的库:

def _reset_board(self): 
    # code... 
 
def reset_board(self): 
    self._reset_board() 

reset_board() 函数只做一件事,调用它的私有(private)对应项。这背后有什么原因吗?由于 python 不必解析名称 _reset_board(),将代码直接放在私有(private)函数中不会更快吗?

请您参考如下方法:

_reset_board 存在,因此可以从 reset_board 调用它和 __init__ . __init__不能调用self.reset_board,因为那个方法在子类中被重写了,__init__要调用具体的_reset_board 从它自己的类实现。 (子类 reset_board 实现可能取决于尚未发生的初始化,以及其他问题。)