Dziedziczenie prywatnych i chronionych metod w Pythonie

Wiem, że w Pythonie nie ma „prawdziwych” prywatnych / chronionych metod. To podejście nie ma niczego ukrywać; Chcę tylko zrozumieć, co robi Python.

class Parent(object):
    def _protected(self):
        pass

    def __private(self):
        pass

class Child(Parent):
    def foo(self):
        self._protected()   # This works

    def bar(self):
        self.__private()    # This doesn't work, I get a AttributeError:
                            # 'Child' object has no attribute '_Child__private'

Czy to zachowanie oznacza, że ​​metody „chronione” zostaną odziedziczone, ale „prywatne” w ogóle nie będą?
A może coś przegapiłem?

questionAnswers(6)

yourAnswerToTheQuestion