A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2013-September/128514.html below:

[Python-Dev] Add a "transformdict" to collections

[Python-Dev] Add a "transformdict" to collectionsEli Bendersky eliben at gmail.com
Tue Sep 10 16:18:41 CEST 2013
On Tue, Sep 10, 2013 at 5:22 AM, Antoine Pitrou <solipsis at pitrou.net> wrote:

> Le Tue, 10 Sep 2013 22:00:37 +1000,
> Nick Coghlan <ncoghlan at gmail.com> a écrit :
> > Is this just syntactic sugar for recursive lookup of a transformed
> > version in __missing__?
>
> Nope. For one, it doesn't use __missing__ at all. I think
> using __missing__ would be... missing the point, because it wouldn't
> working properly if you have e.g. X != Y such that transform(X) == Y
> and transform(Y) == X.
>
> (a simple example being transform = str.swapcase :-))
>
> > Or a way of supplying a custom "key" function
> > to a dictionary?
>
> Probably, although I'm not entirely sure what you mean by that :-)
>
> > Any such proposal should consider how it composes with other dict
> > variants like defaultdict, OrderedDict and counter.
>
> Well, one sticking point here is that those variants don't compose with
> each other already :-)
> But, yes, I may make another proposal with composition in mind.
>

Does anyone have an idea how to make the existing variants more composable?
It would be nice to get a better understanding of this before we add
another variant. Conceptually, composability makes a lot of sense (what if
we want this transformdict but also in insertion order...)

Eli
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20130910/eb84e9b3/attachment.html>
More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4