[EMAIL PROTECTED] wrote:
>> It's faster on my system because d.keys() is already sorted.  But that may 
>> not be the case on other versions of python.<
> 
> In my version it's a little slower. But what system are you using where
> keys is already sorted? IronPython maybe?
> 
> Bye,
> bearophile 


Python 2.4.1 (#65, Mar 30 2005, 09:13:57) [MSC v.1310 32 bit (Intel)] on 
win32

I was a bit surprised by them being sorted.  I just happend to try 
d.keys() in place of s2, and it sped up.  I was expecting it to be a bit 
slower.

Considering the number time I sort keys after getting them, It's the 
behavior I would prefer.  Maybe a more dependable dict.sortedkeys() 
method would be nice.  ;-)

Like Alex pointed out you need to make sure there aren't duplicates in 
the list used for keys.

def psort10(s1, s2):
     d = dict(zip(s2,s1))
     assert len(d) == len(s1)
     s1[:] = (d[n] for n in sorted(d.keys()))

Ron
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to