我使用PyCharm社区版3.4。在
我已将self.__a
添加到手表中。在
这是我的例子:
class Box:
def __init__(self, a, b, c):
self.__a = a
self._b = b
self.c = c
d = 0 #Breakpoint.
a = Box(1, 2, 3)
所以,我开始调试并在断点处停止。self.__a
手表显示{AttributeError}'Box' object has no attribute 'a'.
我按Alt+F8并计算self.__a = a
。结果是None
。在
然后我计算self.__a
,结果是1
。在
我的手表self.__a
仍然显示{AttributeError}'Box' object has no attribute 'a'
。我删除它。然后我添加另一个手表self.__a
。它显示1
。在
你能解释一下这是怎么回事吗?在
这是因为box没有
__a
它的名字被弄错了。。。在
另请参见:Name_mangling#Python
它变成了
如果你把它换成手表
^{pr2}$它会显示正确的值
但也应该在调试面板的中间显示变量)
相关问题 更多 >
编程相关推荐