0
的另一个对象的保护成员在我班上的方法MyHeader
我访问另一个MyHeader
对象new_header
的私有财产_label
:蟒蛇/ PyCharm:访问同一类
class MyHeader:
def __init__(self, label, n_elem):
self._label = label
self._n_elem = n_elem
def check_header_update(self, new_header):
# check that label is preserved
if new_header._label != self._label:
raise Exception("new header must have the same label")
在PyCharm,这个结果在语法高亮错误“访问受保护的成员_label类”。
我试图指定new_header
参数的类型:
def check_header_update(self, new_header: MyHeader):
但这并不认可,并在运行时这导致错误“NameError:名字‘MyHeader’没有定义” 。
任何想法如何以可接受的方式访问受保护的成员?
它的工作原理,谢谢您! – Thomas
也感谢指向文档的指针。 另外,在我的课程上下文中,“_label”仍然是私有的,所以我很高兴它能够像这样工作。 – Thomas