← Каталог
Рекомендации по разработке на Python — Управление состоянием и мутабельностью
Фрагмент из «Рекомендации по разработке на Python»: Управление состоянием и мутабельностью.
from dataclasses import dataclass
from typing import List
@dataclass(frozen=True)
class OrderItem:
product_id: str
quantity: int
price: float
@dataclass(frozen=True)
class Order:
id: str
user_id: str
items: List[OrderItem]
status: str
@property
def total(self) -> float:
return sum(item.quantity * item.price for item in self.items) from dataclasses import dataclass
from typing import List
@dataclass(frozen=True)
class OrderItem:
product_id: str
quantity: int
price: float
@dataclass(frozen=True)
class Order:
id: str
user_id: str
items: List[OrderItem]
status: str
@property
def total(self) -> float:
return sum(item.quantity * item.price for item in self.items)