[Python-Dev] Re: PEP 318: Decorators last before colon (original) (raw)

Jeff Kowalczyk jtk at yahoo.com
Wed Mar 31 12:29:49 EST 2004


Jeremy Hylton wrote:

Another possibility that has been suggested is [decorator] def func(arg, arg):

The decorator before def spelling is familiar from C#, and looks the nicest to me. However, I'm curious about the way decorators differ from docstrings to explain putting one kind of metadata shorthand before def and the other after.

[decorator] def func(arg, arg): """Docstring""" pass

def func(arg, arg): [decorator] """Docstring""" pass

If there will only ever be two of these kinds of things, and a consensus is to put them on lines before and after the def, that would seem to be reason enough for decorator before def.

If someday there were other types of metadata distinct from decorators, perhaps immutable and pertaining to secure execution, the before-docstring spelling might allow for more consistent additions to the shorthand.

def func(arg, arg): [decorator] (otherator) """Docstring""" pass



More information about the Python-Dev mailing list