假设我有一个 python 文件
def ihavefile(): i = 1
def anotherfile(): pass
我想从文件中提取所有函数,比如ihavefile
和anotherfile
. 我怎么做?我只是逐行读取文件,也许写一个正则表达式还是有更好的方法?
假设我有一个 python 文件
def ihavefile(): i = 1
def anotherfile(): pass
我想从文件中提取所有函数,比如ihavefile
和anotherfile
. 我怎么做?我只是逐行读取文件,也许写一个正则表达式还是有更好的方法?
鉴于你的例子:
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)