[Python] What are data classes and how are they different from common classes?

Discussão em 'Python' iniciado por Stack, Fevereiro 20, 2025.

  1. Stack

    Stack Membro Participativo

    PEP 557 introduces data classes into the Python standard library. It says that by applying the @dataclass decorator shown below, it will generate "among other things, an __init__()".


    from dataclasses import dataclass

    @dataclass
    class InventoryItem:
    """Class for keeping track of an item in inventory."""
    name: str
    unit_price: float
    quantity_on_hand: int = 0

    def total_cost(self) -> float:
    return self.unit_price * self.quantity_on_hand​

    It also says dataclasses are "mutable namedtuples with default", but I don't understand what this means, nor how data classes are different from common classes.

    What are data classes and when is it best to use them?

    Continue reading...

Compartilhe esta Página