def _number_of_line(member):
"""Try to return the number of the first line of the definition of a
member of a module."""
if isinstance(member, tuple):
member = member[1]
try:
return member.__code__.co_firstlineno
except AttributeError:
pass
try:
return inspect.findsource(member)[1]
except BaseException:
pass
for (key, value) in vars(member).items():
try:
return value.__code__.co_firstlineno
except AttributeError:
pass
else:
return 0
评论列表
文章目录