No problem.  As for the main use of  cmp(), btw, afaik, it's used to define custom sorting, as in the following:

>>> import random
>>> temp = []
>>> for i in range(10):
    temp.append((random.randint(0,100),random.randint(0,100),random.randint(0,100)))

   
>>> temp
[(16, 70, 87), (57, 80, 33), (14, 22, 2), (21, 92, 69), (40, 18, 90), (60, 78, 35), (3, 98, 7), (32, 21, 39), (15, 67, 15), (70, 95, 39)]
>>> temp.sort(cmp=lambda x, y: cmp(x[0],y[0]))
>>> temp
[(3, 98, 7), (14, 22, 2), (15, 67, 15), (16, 70, 87), (21, 92, 69), (32, 21, 39), (40, 18, 90), (57, 80, 33), (60, 78, 35), (70, 95, 39)]
>>> temp.sort(cmp=lambda x, y: cmp(x[1],y[1]))
>>> temp
[(40, 18, 90), (32, 21, 39), (14, 22, 2), (15, 67, 15), (16, 70, 87), (60, 78, 35), (57, 80, 33), (21, 92, 69), (70, 95, 39), (3, 98, 7)]
>>> temp.sort(cmp=lambda x, y: cmp(x[2],y[2]))
>>> temp
[(14, 22, 2), (3, 98, 7), (15, 67, 15), (57, 80, 33), (60, 78, 35), (32, 21, 39), (70, 95, 39), (21, 92, 69), (16, 70, 87), (40, 18, 90)]

or, without lambdas:

>>> def sort(x,y):
    return cmp(x[0],y[0])

>>> def sort1(x,y):
    return cmp(x[1],y[1])

>>> def sort2(x,y):
    return cmp(x[2],y[2])

>>> temp.sort(cmp=sort)
>>> temp
[(3, 98, 7), (14, 22, 2), (15, 67, 15), (16, 70, 87), (21, 92, 69), (32, 21, 39), (40, 18, 90), (57, 80, 33), (60, 78, 35), (70, 95, 39)]
>>> temp.sort(cmp=sort1)
>>> temp
[(40, 18, 90), (32, 21, 39), (14, 22, 2), (15, 67, 15), (16, 70, 87), (60, 78, 35), (57, 80, 33), (21, 92, 69), (70, 95, 39), (3, 98, 7)]
>>> temp.sort(cmp=sort2)
>>> temp
[(14, 22, 2), (3, 98, 7), (15, 67, 15), (57, 80, 33), (60, 78, 35), (32, 21, 39), (70, 95, 39), (21, 92, 69), (16, 70, 87), (40, 18, 90)]


Rinzwind wrote:
Thank you!
*opens manual again*

Wim

On 1/26/06, Orri Ganel <[EMAIL PROTECTED]> wrote:
Well, the cmp() function does this if you compare the number to 0:

>>> cmp(-34,0)
-1
>>> cmp(0,0)
0
>>> cmp(23,0)
1

Of course, that's not all cmp() is good for, but it would work in this case.

HTH,
Orri
-- 
Email: singingxduck AT gmail DOT com
AIM: singingxduck
Programming Python for the fun of it.


_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor


-- 
Email: singingxduck AT gmail DOT com
AIM: singingxduck
Programming Python for the fun of it.


_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to