Modifying signature of ctor in class
ian.g.kelly at gmail.com
Fri Sep 25 00:19:30 CEST 2015
On Thu, Sep 24, 2015 at 4:10 PM, Ian Kelly <ian.g.kelly at gmail.com> wrote:
> On Thu, Sep 24, 2015 at 2:28 PM, Joseph L. Casale
> <jcasale at activenetwerx.com> wrote:
>> I have a class factory where I dynamically add a constructor to the class output.
>> The method is a closure and works just fine, however to accommodate the varied
>> input its signature is (*args, **kwargs).
>> While I modify the doc strings, the ctor sig is not optimal. Without building
>> this a string and using eval, is there anything that can be done about this?
> In Python 3.3+ you can attach a Signature object to a function by
> setting the function's __signature__ attribute. In Python 3.4+ the
> __signature__ is used in generating the signature for PyDoc and
Quick and dirty example:
py> from inspect import Signature, Parameter
py> def foo(*args, **kwargs): pass
py> foo.__signature__ = Signature([Parameter('x',
Help on function foo in module __main__:
foo(x, *, y)
More information about the Python-list