[Python-Dev] Re: Re: lists v. tuples
Guido van Rossum
guido@python.org
Wed, 16 Apr 2003 11:32:28 -0400
> However, I'm slightly dubious about the x.sort(lt=f) vs x.sort(cmp=f)
> technique because it doesn't generalize terribly well.
>
> If I want to write a function that takes a comparison function as an
> argument, and eventualy passes that function to sort, what do I do?
> Something like this?
>
> def myfun(foo, bar, lt=None, cmp=None):
> # ...
> x.sort(lt=lt, cmp=cmp)
> # ...
>
> and assume that sort will use None as its defaults also? Or must I
> write
>
> if lt==None:
> x.sort(cmp=cmp)
> else:
> x.sort(lt=lt)
>
> Either way it's inconvenient.
Given that (if we add this) the cmp argument will be deprecated,
myfun() should take a 'lt' comparison only.
> So I wonder if it might be better, as a way of allowing sort to take
> two different types of comparison functions, to distinguish between
> them by making them different types.
But Python doesn't do types that way.
--Guido van Rossum (home page: http://www.python.org/~guido/)