DEV Community

Discussion on: Dataclasses in Python are nice!

Collapse
 
isabelcmdcosta profile image
Isabel Costa

Interesting point, Christopher! The example I used here is quite simple, for demonstration purposes. I wanted to keep this post short as a small introduction to this feature I found exciting :) I haven't used much of namedtuples yet. I would use this dataclass feature next time I feel like defining a class and avoid write the functions that come built-in with this annotation. I think the official documentation explains it well. I haven't look yet into performance gains, but I've seen there are some posts out there exploring more of the differences of namedtuples vs dataclasses.

Collapse
 
gamma2653 profile image
Christopher De Jesus

Hi, I revisited this now, it seems the primary difference is dataclasses are mutable, while namedtuples are immutable. Aside from that, using dictionaries can work, but has roughly similar overhead to dataclasses; or at least the difference is negligible. It really comes down to whether you would want the ability to traverse all values/ have specific named attributes. Thanks for this article! ^_^

Thread Thread
 
isabelcmdcosta profile image
Isabel Costa

Awesome Christopher! It makes much sense now, why this exists :)
Thank you so much for coming back and sharing your knowledge!
I just learned something new with this 🤗