On Fri, 10 Jul 2020 at 13:47, Stestagg <stest...@gmail.com> wrote:

> The intent of my statement was: The current implementation of dict does not 
> allow any reasonable implementation of dict_keys/dict_values/dict_items with 
> O(1) index behaviour.  I.e. the performance scalability of any future changes 
> to the dict_* types that add direct indexing is *not* likely to be adversely 
> affected by changes to the implementation of dict(), unless somehow iteration 
> in O(n) time becomes impossible.

So you're saying that you'd like to be able to index
dict.keys()/dict.values()/dict.items(), but are fine with O(n)
performance.

OK,

    list(d.items())[n]

does *precisely* what you are asking for. So you're asking for a less
verbose spelling of that. That would be something we could discuss,
except for the fact that

    the_items = list(d.items())
    the_items[n]

has *better* amortised performance than that, if I can index multiple
times using the same snapshot of the list.

It's pretty much certain that you're not going to succeed if you are
requesting a new dictionary feature that's guaranteed to have worse
performance than the current idiomatic Python way of achieving the
same result...

So either you are failing very badly at explaining what you want and
why it's useful, or you should probably give up.
Paul
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/IKIPDDKS5LSYZCWO7LTLSXLTAZRVP6H3/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to