Takže z toho hrubého nadávání na Python, že nemá ordered dictionary nakonec vzešlo, že je vlastně nemá vůbec nic, krom toho Pythonu 3.7+. Tak teď by měl přijít naopak vychvalování Pythonu do nebes. :-)
Ehm, pan bude znalec.
Ordered map ma C++ s STL (Standard Templte Library) nekdy od sereho davnoveku 90tych let, Java dtto, akorat do verze 1.5 bez podpory generik.
Takze Python se v teto oblasti dotahl cca na uroven Javy 1.2 z roku 1998.
Mozna uz brzy uvitame python v tomto tisicileti.
Tak pán to nemínil globálně, ale na ten konkrétní případ, kde data putují skrze několik datových reprezentací a ordered je pouze v pythonu, kterému jako jedinému to bylo vyčítáno, že to neumí :-).
A ten map z C++ je přece něco úplně jiného. Schválně, zkus v něm udělat tohle:
>>> d = {}
>>> d[3] = 'trojka'
>>> d['trojka'] = 3
>>> d[(3, 'trojka')] = 'prekvapeni'
>>> d
{3: 'trojka', 'trojka': 3, (3, 'trojka'): 'prekvapeni'}
>>> for k, v in d.items():
... print(type(k), type(v))
...
<class 'int'> <class 'str'>
<class 'str'> <class 'int'>
<class 'tuple'> <class 'str'>
Když je řeč o tom co kdo od kdy umí, který datový kontejner v C++ tohle bez dalšího umí a ty s ním dovedeš předvést ekvivalentní ukázku?