extra positional arguments before optional parameters syntax
George Sakkis
george.sakkis at gmail.com
Wed Jun 18 17:34:39 EDT 2008
On Jun 18, 5:25 pm, MisterWilliam <mr.williamch... at gmail.com> wrote:
> I noticed that in PEP 3105, the PEP about turning print to print(),
> the syntax for print() is defined as follows:
> def print(*args, sep=' ', end='\n', file=None)
>
> Ignoring the fact that print is a reserved keyword in python, this is
> not valid python because extra positional arguments (*args), cannot
> come before optional parameters (sep=' ', end='\n', file=None).
>
> >>> def f(*args, sep=' ', end='\n', file=None):
>
> File "<stdin>", line 1
> def f(*args, sep=' ', end='\n', file=None):
> ^
> SyntaxError: invalid syntax
>
> Am I misunderstanding something? Is this type of syntax suppose to be
> allowed in a future version of Python? (I can't find anything about
> this through my searching.)
You didn't search hard enough; it's three PEPs earlier:
http://www.python.org/dev/peps/pep-3102/
George
More information about the Python-list
mailing list