attrs
Python Classes Without Boilerplate
...This results in a concise and explicit overview of the class's attributes, a human-readable __repr__, a complete set of comparison methods and more, all without having to repetitively write dull boilerplate code and without negatively affecting your runtime performance. With attrs you can write correct and self-documenting code, and you'll find joy in writing classes again!