proposal: Ellipsis in argument list
Stefan Behnel
stefan_ml at behnel.de
Sat Jan 12 09:08:24 EST 2013
Szabolcs Blága, 12.01.2013 14:30:
> I have an idea that the Ellipsis object could be used in function calls.
> The "..." syntax should automagically turn into an Ellipsis positional
> argument.
>
> def f(*args):
> ext_args = []
> for i, a in enumerate(args):
> if a is Ellipsis:
> ext_args.extend([x for x in range(args[i-1]-1, args[i+1])])
> else:
> ext_args.append(a)
> return ext_args
>
> Calling it for the above example specifically:
>
> >>> f(34, ..., 43)
> [34, 35, 36, 37, 38, 39, 40, 41, 42, 43]
>
> That might be useless or someone might say it is confusing, but I think it
> would be relatively easy to implement and a nice little syntactic "sugar".
Not sure what exactly you are proposing here, this works for me:
Python 3.2.3 (default, Oct 19 2012, 19:53:16)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> def f(*args): print(args)
>>> f(34, ..., 43)
(34, Ellipsis, 43)
Stefan
More information about the Python-list
mailing list