Let's say I have this class in my module:
class Person:
def __init__(self, name):
self._name = name
So I have in my class a protected attribute called _name
but I'm still able to call this attribute like this:
p = Person('Felipe')
print(p._name)
Why? Shouldn't protected attributes be protected from direct access outside their class or subclasses?