第十八章:语言工具-inspect:检查现场对象-文档串

18.4.5 文档串
可以用getdoc()获取一个对象的docstring。返回值是__doc__属性,其中的tab被扩展为空格,并且其缩进保持一致。

import inspect

import example

print('B.__doc__:')
print(example.B.__doc__)
print()
print('getdoc(B):')
print(inspect.getdoc(example.B))

通过这个属性直接获取docstring的第二行时,它会缩进,不过getdoc()会把它移至左边界。
在这里插入图片描述
除了具体的docstring,还可以从实现对象的源文件获取注释(如果可以得到源文件)。getcomments()函数会查看对象的源文件,并查找实现代码前面的注释。

import inspect

import example

print(inspect.getcomments(example.B.do_something))

返回的行中包括注释前缀,这里会去除空白符前缀。
在这里插入图片描述
将一个模块传入getcomments()时,返回值总是模块中的第一个注释。

import inspect

import example

print(inspect.getcomments(example))

示例文件中邻接的行会作为一个注释,不过一旦出现一个空行,注释就会停止。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值