获得对象可被调用的方法及方法文档

本文介绍了一个Python函数info,该函数可以格式化并打印出对象的所有可调用方法及其文档字符串。通过调整参数,可以改变输出的格式。示例展示了如何使用此函数查看字符串对象的方法及其详细说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

def info(object, collapse=1, spacing=15):
    """
    使用更加格式化的方式来将
    object中可以被调用的方法,被调用的方法详细的文档说明打印出来

    collapse默认为1,用于选择分割字符串的方式,使processFun得值为" ".join(s.split()),
    如果设为0,则为s
    """
    methodList = [method for method in dir(object)
                  if callable(getattr(object, method))]

    processFun = collapse and (lambda s: " ".join(s.split())) or (lambda s: s)

    print('\n'.join(["%s %s" % ((method.ljust(spacing)),
                                processFun(str(getattr(object, method).__doc__)))
                     for method in methodList]
                    )
          )


if __name__ == '__main__':
    s = "123"
    info(s)

部分输出结果:

__add__         Return self+value.
__class__       str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str Create a new string object from the given object. If encoding or errors is specified, then the object must expose a data buffer that will be decoded using the given encoding and error handler. Otherwise, returns the result of object.__str__() (if defined) or repr(object). encoding defaults to sys.getdefaultencoding(). errors defaults to 'strict'.
__contains__    Return key in self.
__delattr__     Implement delattr(self, name).
__dir__         Default dir() implementation.
__eq__          Return self==value.
__format__      Return a formatted version of the string as described by format_spec.
__ge__          Return self>=value.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值