[Python-Dev] slightly inconsistent set/list pop behaviour (original) (raw)

Paul Moore p.f.moore at gmail.com
Wed Apr 8 17:38:35 CEST 2009


2009/4/8 Steve Holden <steve at holdenweb.com>:

Paul Moore wrote:

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 a = 0.001 b = 0.002 print set([a, b]).pop(), set([b, a]).pop() 0.002 0.001

Cheat! We were using integers...

:-)

Paul.



More information about the Python-Dev mailing list