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

Замена значений в датаклассе в ООП в Python

Чтобы получить новый объект с частью измененных полей, не трогая старый, удобно пользоваться функцией replace из модуля dataclasses.

Давайте сделаем класс User:

from dataclasses import dataclass, replace @dataclass class User: name: str age: int

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

user = User('john', 25) user2 = replace(user, age=30) print(user.age) # 25 print(user2.age) # 30

Исходный объект не меняется. Меняются только те поля, которые переданы в replace.

Сделайте датакласс Employee с полями name и salary.

Создайте объект и через replace получите второй с другой зарплатой. Убедитесь, что у первого зарплата не изменилась.

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