<p><code>instancemethod</code>从其<code>__func__</code>中获取其docstring。改为更改<code>__func__</code>的docstring。(函数的<code>__doc__</code>属性是可写的。)</p>
<pre><code>>>> class Foo(object):
... def bar(self):
... pass
...
>>> Foo.bar.__func__.__doc__ = "A super docstring"
>>> help(Foo.bar)
Help on method bar in module __main__:
bar(self) unbound __main__.Foo method
A super docstring
>>> foo = Foo()
>>> help(foo.bar)
Help on method bar in module __main__:
bar(self) method of __main__.Foo instance
A super docstring
</code></pre>
<p>从<a href="http://docs.python.org/reference/datamodel.html">2.7 docs</a>:</p>
<blockquote>
<p>User-defined methods</p>
<p>A user-defined method object combines a class, a class instance (or None) and any callable
object (normally a user-defined function).</p>
<p>Special read-only attributes: im_self is the class instance object, im_func is the function
object; im_class is the class of im_self for bound methods or the class that asked for the
method for unbound methods; <strong><code>__doc__</code> is the method’s documentation (same as
<code>im_func.__doc__</code>);</strong> <code>__name__</code> is the method name (same as <code>im_func.__name__</code>);
<code>__module__</code> is the name of the module the method was defined in, or None if unavailable.</p>
<p>Changed in version 2.2: im_self used to refer to the class that defined the method.</p>
<p>Changed in version 2.6: For 3.0 forward-compatibility, <strong>im_func is also available as
<code>__func__</code>,</strong> and im_self as <code>__self__</code>.</p>
</blockquote>