3 ms·
They are the "same" by equality, but that's not the only relevant comparison. Ordering is important if you want lexicographic less than. Without ordering, you
by rraval 9y ago
They are the "same" by equality, but that's not the only relevant comparison. Ordering is important if you want lexicographic less than.
Without ordering, you wouldn't be able to sanely run `sorted` on a iterable of namedtuples.
- tomrod 9y agoDumb question from a non-developer: wouldn't using a dict object make more sense if someone wanted an unordered named tuple?
- coldtea 9y agoIt's not about the storage (besides Python also has order dicts). Namedtuples are for the convenience of creating a record type (though indeed as others say, treating it as tuple where things expect a tuple is also a benefit).
- xapata 9y agoA dict is appropriate for labeled data. Currently unordered, but likely to keep insertion order in v3.7 and later. Don't call it an unordered namedtuple. That's confusing, because tuples are ordered.
- emmelaich 9y agoYou could order with a custom comparison; specify the columns* to be ordered as in a SQL 'ORDER BY'.