解析python安装文件
发布时间:2020-12-20 13:30:56 所属栏目:Python 来源:网络整理
导读:我需要编写一个 python脚本来读取和解析设置python文件. setup包含一些变量和函数调用. 例: setup.pyx = 5mylist [ 1,2,3]myfunc(4)myfunc(5)myfunc(30)main.py.parse_setup('setup.py'). 我想解析设置文件并“看”定义了什么类型的变量以及调用什么类型的
我需要编写一个
python脚本来读取和解析设置python文件.
setup包含一些变量和函数调用. 例: setup.py x = 5 mylist [ 1,2,3] myfunc(4) myfunc(5) myfunc(30) main.py . parse_setup('setup.py') . 我想解析设置文件并“看”定义了什么类型的变量以及调用什么类型的函数. 问题是导入失败,因为没有定义在setup.py中调用的myfucn(). 有没有办法拦截setup.py中的myfunc()调用并执行我自己在main.py中定义的函数? 如果我想要执行的函数是成员函数怎么办? 任何人都可以想到一个更好的方法来提取设置文件中的数据,我真的不想一行一行地读取它. 谢谢! 解决方法
如果您的setup.py文件包含以下Python语句:
x = 5 mylist = [ 1,3] y = myfunc(4) z = myfunc(x) 你可以在main.py中做这样的事情来找出它定义的内容: def myfunc(n): return n**2 def parse_setup(filename): globalsdict = {'__builtins__': None,'myfunc': myfunc} # put predefined things here localsdict = {} # will be populated by executed script execfile(filename,globalsdict,localsdict) return localsdict results = parse_setup('setup.py') print results # {'y': 16,'x': 5,'z': 25,'mylist': [1,3]} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |