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/128609.html below:

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

[Python-Dev] Add a "transformdict" to collectionsEthan Furman ethan at stoneleaf.us
Thu Sep 12 17:48:22 CEST 2013
On 09/12/2013 08:40 AM, Antoine Pitrou wrote:
> Le Thu, 12 Sep 2013 08:05:44 -0700,
> Ethan Furman <ethan at stoneleaf.us> a écrit :
>> On 09/12/2013 07:43 AM, Antoine Pitrou wrote:
>>>
>>> Yeah, so this is totally silly. What you're basically saying is "we
>>> don't need TransformDict since people can re-implement it
>>> themselves".
>>
>> No, what I'm saying is that the "case-preserving" aspect of
>> transformdict is silly.  The main point of transformdict is to
>> enable, for example, 'IBM', 'Ibm', and 'ibm' to all match up as the
>> same key.  But why?  Because you don't trust the user data.  And if
>> you don't trust the user data you have to add the correct version of
>> the key yourself before you ever process that data, which means you
>> already have the correct version stored somewhere.
>
> That's assuming there is an a priori "correct" version. But there might
> not be any. Keeping the original key is important for different reasons
> depending on the use case:
>
> - for case-insensitive dicts, you want to keep the original key for
>    presentation, logging and debugging purposes (*)
>
> - for identity dicts, the original key is mandatory because the id()
>    value in itself is completely useless, it's just used for matching
>
> (*) For a well-known example of such behaviour, think about Windows
> filesystems.

Ah, I see.  Thank you for explaining.

--
~Ethan~
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