2

假设我有一个 python 文件

def ihavefile(): i = 1
def anotherfile(): pass

我想从文件中提取所有函数,比如ihavefileanotherfile. 我怎么做?我只是逐行读取文件,也许写一个正则表达式还是有更好的方法?

4

1 回答 1

4

鉴于你的例子:

from inspect import getmembers, isfunction, getsource

import your_module
print getmembers(your_module, isfunction)
# [('anotherfile', <function anotherfile at 0x028129B0>), ('ihavefile', <function ihavefile at 0x027F3570>)]
for name, func in getmembers(your_module, isfunction):
    print getsource(func)
于 2012-11-02T00:42:47.423 回答