C#3.0 and lambdas
Steven Bethard
steven.bethard at gmail.com
Mon Sep 19 11:50:43 EDT 2005
Steven D'Aprano wrote:
> Consider this:
>
> def func(some_tuple):
>
> How many items should you pass in the tuple? If it takes variable
> arguments, then that works, but if you always expect a fixed number, then
>
> def func((x, y))
>
> is more explicit.
>
> The only problem I have is that once you unroll the tuple like that, it is
> hardly necessary to pass the argument as a tuple. Why not just pass x and
> y as two arguments?
>
> def func(x, y)
I generally agree with this (and follow the same guideline in my own
APIs), but sometimes you don't have this option. If I have a class that
I'd like to support an indexing operation like:
obj[x, y]
then the natural __getitem__ signature will look like:
def __getitem__(self, (x, y)):
...
STeVe
More information about the Python-list
mailing list