擅长:python、mysql、java
<p>作为补充,如果您想知道为什么<code>__findJokers</code>方法只能从类方法内部访问,那么它的工作原理如下:</p>
<pre><code>>>> dir(Bot)
['_Bot__findJokers', '__doc__', '__init__', '__module__']
</code></pre>
<p>在内部类字典中,<code>__findJokers</code>已重命名为<code>_Bot_findJokers</code>。在</p>
<p>那么让我们分解这个方法。在</p>
^{pr2}$
<p>在方法代码中,属性名也直接替换为<code>_Bot_findJokers</code>。
这里也可以观察到:</p>
<pre><code>>>> Bot._Bot__findJokers.im_func.func_code.co_names
('_Bot_findJokers',)
</code></pre>
<p>这意味着最终,属性<code>__findJokers</code>从未真正存在过。在</p>