Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pyOpPdRO 15 of 174 menu
◀ ▶

Свойство только для чтения в ООП в Python

Свойство можно сделать так, чтобы его можно было прочитать, но нельзя было записать. Для этого достаточно сделать свойство с декоратором property и не делать для него сеттер.

Давайте рассмотрим класс, в котором имя и возраст хранятся в приватных свойствах:

class User: def __init__(self, name, age): self.__name = name self.__age = age @property def name(self): return self.__name @property def age(self): return self.__age

Создадим объект и прочитаем его свойства:

user = User('john', 25) print(user.name) print(user.age)

Попытка записать что-то в свойство приведет к ошибке:

user.name = 'eric' # ошибка

Сделайте класс Employee с именем и возрастом, которые можно прочитать и нельзя записать.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить