我正在创建自己的代码语言,我想为代码实现import
功能。我有我的主要代码,用语言编写代码:
from config.Bean_Functions import *
impt.math()
print math.sqrt(4)
然后,我在名为config
的同一目录中有一个文件夹,其中有一个名为Bean_Functions.py
的文件:
class impt(object):
@staticmethod
def math():
return from config.Bean_Math import *
最后,在config
文件夹中,我有一个名为Bean_Math.py
的文件,其代码为:
class math(object):
def sqrt(op1):
return round(op1 ** 0.5, 2)
现在,我的问题是我想返回from...import...
语句,但Python将其解释为尝试返回导入文件的过程,但我希望它返回整个行。
我能以任何方式做到这一点吗?
我正在运行Python 2.7.10
答案 0 :(得分:1)
基本上你想要一个你调用的函数来修改调用者的范围。这可能是不可行的,除了可能有一些extreme hackery,即使它是,你最好还是以不依赖于它的方式构建程序。
你谈到创建自己的代码语言 - 你可以实现你想要的代码语言的语义(例如一个函数能够修改调用者的范围),而不必在Python中执行相同的操作。实施你的语言。