On Thu, Sep 24, 2015 at 5:01 PM, Joseph L. Casale <jcas...@activenetwerx.com> wrote: >> py> from inspect import Signature, Parameter >> py> def foo(*args, **kwargs): pass >> ... >> py> foo.__signature__ = Signature([Parameter('x', >> Parameter.POSITIONAL_OR_KEYWORD), Parameter('y', >> Parameter.KEYWORD_ONLY)]) >> py> help(foo) >> Help on function foo in module __main__: >> >> foo(x, *, y) > > That actually should harmlessly support Python versions less than 3.3 > while simply accomplishing nothing. I don't even need a test for the version. > > I'll go with that as a decent trade off.
Well, setting the __signature__ attribute is harmless, but do note that inspect.Signature doesn't exist before 3.3. -- https://mail.python.org/mailman/listinfo/python-list