有没有办法为Python对象的所有成员打印文档字符串的简短版本?

Jos*_*ben 7 python oop methods docstring metaprogramming

在Python中dir()返回当前本地范围中的名称列表. __doc__返回对象的完整文档字符串.

如何列出当前本地范围内的所有名称并打印每个项目文档字符串的第一行?

为了详细说明:对import numpy as np我想获得通过返回的所有名称的简短描述的列表,dir(np)print(np.nonzero.__doc__.split('.', 1)[0]).

我怎样才能做到这一点 ?

Dan*_*sky 5

def print_members(obj):
    for key in dir(obj):
        value = getattr(obj, key)
        doc = (value.__doc__ or '').split('.', 1)[0]
        print('MEMBER: %s\nDOCSTRING: %s\n\n' % (key, doc))
Run Code Online (Sandbox Code Playgroud)