Python, разрешающий доступ к неопределенной переменной класса / экземпляра
Я определил простой / пустой класс Python, как показано ниже.Теперь, если я устанавливаю значение для неопределенной переменной либо с помощью переменной экземпляра, либо с именем класса, Python свободно позволяет мне устанавливать значение для неопределенной переменной, а также позволяет мне обращаться к ней как к переменной экземпляра или класса, не выдавая никакой ошибки.Так что в ореховой оболочке я могу устанавливать неопределенные переменные экземпляра и класса без каких-либо проблем.
Как мы ограничиваем пользователей от установки неопределенных переменных экземпляра и класса в Python.
Здесь, как Python обрабатывает эти неопределенные переменные (undefined_variable_1
и undefined_variable_2
)?Они обрабатываются как переменная экземпляра или переменная класса или как-то еще?
class Test:
pass
### #Now instantiate the class and try setting & it accessing undefined variables
t1 = Test()
t1.undefined_variable_1 = "Undefined class/instance variable being set through instance variable (t1)"
### #Access the undefined variable through instance variable
print(t1.undefined_variable_1)
Test.undefined_variable_2 = "Undefined class/instance variable being set through Class name (Test)"
### #Access the undefined variable through Class name
print(Test.undefined_variable_2)
Как мы можем ограничить пользователя от установки / доступа к неопределенной переменной экземпляр / экземпляр?