[Python-Dev] slightly inconsistent set/list pop behaviour

Paul Moore p.f.moore at gmail.com
Wed Apr 8 14:58:31 CEST 2009


2009/4/8 Duncan Booth <duncan.booth at suttoncourtenay.org.uk>:
> Andrea Griffini <gripho66 at gmail.com> wrote:
>
>> On Wed, Apr 8, 2009 at 12:57 PM, Jack diederich <jackdied at gmail.com>
>> wrote:
>>> You wrote a program to find the two smallest ints that would have a
>>> hash collision in the CPython set implementation?  I'm impressed.
>>>  And by impressed I mean frightened.
>>
>> ?
>>
>> print set([0,8]).pop(), set([8,0]).pop()
>
> If 'smallest ints' means the sum of the absolute values then these are
> slightly smaller:
>
>>>> print set([-1,6]).pop(), set([6,-1]).pop()
> 6 -1

Can't resist:

>>> print set([-2,-1]).pop(), set([-1,-2]).pop()
-1 -2

Paul.


More information about the Python-Dev mailing list