Keep it simple, stupid.
I'd use the built-in dataclass (or something even simpler) where possible. Only when I need more functionalities (e.g. validation) would I switch to using Pydantic model.
Welcome to the Python community on the programming.dev Lemmy instance!
Past
November 2023
October 2023
July 2023
August 2023
September 2023
Keep it simple, stupid.
I'd use the built-in dataclass (or something even simpler) where possible. Only when I need more functionalities (e.g. validation) would I switch to using Pydantic model.
Depends on what you are trying to accomplish, pydantic is great for encoding/decoding
If you don't need that go with dataclasses
I was going to comment this too
For validation and/or (de)serialization: pydantic.
Otherwise, dataclasses.
I also like to replace tuples with NamedTuple, but I tend to use tuples a lot in the first place. It’s generally recommended to use dataclasses instead if you don’t specifically need tuple-like behavior.