Possible PEP: Improve classmethod/staticmethod syntax
Duncan Booth
duncan at NOSPAMrcp.co.uk
Thu Jun 5 04:07:46 EDT 2003
Lulu of the Lotus-Eaters <mertz at gnosis.cx> wrote in
news:mailman.1054745891.17181.python-list at python.org:
>|def Doc(docstring, **kw):
>| def fDoc(f):
>| f.__doc__ = docstring
>| f.__dict__.update(kw)
>| return f
>|class Klass(object):
>| def meth(this, that) [Doc("Bob's your uncle.", Author="me")]:
>| pass
>
> I don't understand this version. I see the idea that you want to pass
> arguments to the "function constructor"--but where does the name 'fDoc'
> come from? How does 'Doc()' know to call 'fDoc()' (which I presume it
> wants to)?
That's because I missed out a line by mistake. Doc doesn't want to call
fDoc, it wants to return it, so it should contain a 'return fDoc'
statement.
--
Duncan Booth duncan at rcp.co.uk
int month(char *p){return(124864/((p[0]+p[1]-p[2]&0x1f)+1)%12)["\5\x8\3"
"\6\7\xb\1\x9\xa\2\0\4"];} // Who said my code was obscure?
More information about the Python-list
mailing list