I really dislike having to use objects (or names, more precisely) for these micro data structures. Over time I’ve moved more and more away from creating classes for data structures in Python, a ‘best practice’ habit I brought over from C#. It is silly in a dynamically typed language. There’s nothing more clear about:
for entry in chartdata: chart.add(entry.x, entry.y)
for x, y in chartdata: chart.add(x, y)
In fact it’s probably less clear, because there is the totally unhelpful variable name “entry.”
At some point- maybe even three items?- it becomes more clear and self-documenting to use names (that is, dicts instead of tuples), but for the very common cases of simple collections used by nearby code, tuples and automatic unpacking can’t be beat!