On Jan 7, 2:06 am, Ian Kelly <ian.g.ke...@gmail.com> wrote: > <ulrich.eckha...@dominolaser.com> wrote: > > Nonetheless, I'm still wondering if I could somehow replace the dict with an > > OrderedDict. > > In Python 3, yes. This is pretty much the entire use case for the new > __prepare__ method of metaclasses. See the "OrderedClass" example[...]
This isn't accurate. The OrderedClass example uses an OrderedDict to remember the method creation order: def __new__(cls, name, bases, classdict): result = type.__new__(cls, name, bases, dict(classdict)) result.members = tuple(classdict) return result The instantiated objects __dict__ will still be a regularly dictionary, while the assignment order is stored in the class attribute .members. -- http://mail.python.org/mailman/listinfo/python-list