0

我正在尝试查找存储在python文件中的类或函数中的代码行数我的代码是这样的......我想要的是在类中找到代码行数而不是所有文件...有什么好的方法吗?

import inspect
import foo    
for a,b in inspect.getmembers(foo):
    if inspect.isclass(b):
        print a  # find a class within the file
4

2 回答 2

3
len(inspect.getsourcelines(a)[0])

从 inspect.getsourcelines 文档:

返回对象的源代码行列表和起始行号。

这就是为什么你需要 0 索引

于 2012-10-21T08:51:04.347 回答
3

你仍然可以使用inspect

In [6]: from test import A

In [7]: import inspect

In [8]: inspect.getsourcelines(A)
Out[8]: 
(['class A(object):\n',
  '    pass\n',
  '    pass\n',
  '    pass\n',
  '    pass\n',
  '    pass\n',
  '    pass\n',
  '    pass\n',
  '    pass\n'],
 1)

len(inspect.getsourcelines(A)[0])会返回你想要的。

于 2012-10-21T08:51:54.980 回答