On Thu, Jul 30, 2020, 3:37 PM Marco Sulla <[email protected]> wrote:
> On Thu, 30 Jul 2020 at 19:24, Steven D'Aprano <[email protected]> wrote: > >> You can't insert a key in a specific position. If I have this dict: >> >> mydict = {'a': 1, 'c': 3, 'd': 4, 'e': 5} >> >> I can't insert 'b':2 between keys 'a' and 'c', except by creating a new >> dict. >> > > Not sure about this. In C code, dicts are a hashtable and an array of > items. In theory, nothing prevents you from inserting a new key in a > specific position of the key array instead of at the end. > Nothing but the cost of shifting successive elements by 1 and sometimes copying the entire array to a new, larger array. Would these be the *non-mutating* methods desired of insertion-ordered dicts? .iloc[sli:ce] .iloc[int] .iloc[[list,]] .iloc[callable] .iloc[bitmask] .index(key) _______________________________________________ > Python-ideas mailing list -- [email protected] > To unsubscribe send an email to [email protected] > https://mail.python.org/mailman3/lists/python-ideas.python.org/ > Message archived at > https://mail.python.org/archives/list/[email protected]/message/PX6OBI4FFJXLLTWWSA5O7SKCD3L6KMWP/ > Code of Conduct: http://python.org/psf/codeofconduct/ >
_______________________________________________ Python-ideas mailing list -- [email protected] To unsubscribe send an email to [email protected] https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/[email protected]/message/TIQKQ3WP2NMC6MIESMOBCW2SAHXUP74T/ Code of Conduct: http://python.org/psf/codeofconduct/
