Python相当于lua的loadfile

时间:2015-05-27 22:42:53

标签: python function lua

在lua中有一个名为loadfile的函数,该函数允许程序将.lua文件解析为当前项目。所有函数和变量都像在同一个文件中一样工作。

这对加载插件很有用。我试图将电报机器人移植到python但是找不到允许我加载.py文件并让函数在文件上下文中的函数。

我尝试过python的execfile并导入文件,但是不允许加载文件的功能在初始文件的范围内。

(即fileA.py加载fileB.py.file文件有“doThis”函数.fileB无法使用execfile访问“doThis”)

如何在python中实现与lua的loadfile相同的功能?

我正在使用python 2

1 个答案:

答案 0 :(得分:0)

您通常不应该这样做,因为通配符导入会使代码更难调试,但是:

from other_module import *

other_module中定义的所有内容导入当前模块的全局命名空间。它不完全一样,但它和你一样接近。

execfile("other_module.py", globals())

非常相似,只是它不会在sys.modules中缓存模块。