On 7 April 2013 19:02, Nick Gnedin <ngne...@gmail.com> wrote: > > Folks, > > I am writing an extension where I follow the guide on the web > (http://docs.python.org/3.3/extending/newtypes.html#generic-attribute-management). > I have an object declared, > > struct Object > { > PyObject_HEAD > }; > > and a member set through tp_getset mechanism, > > PyGetSetDef ObjectGetSet[] = > { > {"mem", (getter)MemGet, (setter)MemSet, "mem-doc-string", NULL}, > {NULL} /* Sentinel */ > }; > > My question is - how do I access the doc string "mem-doc-string" supplied in > the PyGetSetDef structure? If I type > > print(obj.mem.__doc__) > > then the __doc__ string for the result of a call to MemGet(...) is printed, > not the doc string supplied in the PyGetSetDef structure. >
That's not how Python works. You won't be able to get the docstring of a descriptor this way. You need to do it from the class. The behaviour you observe is normal and cannot be overriden. -- Arnaud -- http://mail.python.org/mailman/listinfo/python-list