如何在导入器中定义函数,使其在导入的内部可见?我试过这个
importer.py
是
def build():
print "building"
build()
import imported
由此,imported.py
简直就是
build()
然而,这失败了
building
Traceback (most recent call last):
File "C:\Users\valentin\Desktop\projects\maxim\miniGP\b01\evaluator\importer.py", line 6, in <module>
import imported
File "C:\Users\valentin\Desktop\projects\maxim\miniGP\b01\evaluator\imported.py", line 1, in <module>
build()
NameError: name 'build' is not defined
更新在我得到了循环导入的响应后,让导入和导入相互依赖,我觉得我需要明确一下,这并不总是好的。我的目的是在导入的模块中指定一些通用策略。它将使用一些用户定义的函数,例如build
. 用户定义必要的函数并调用策略。关键是共享策略不能依赖于特定的用户定义。我相信代替import
,我需要类似的东西evaluate(imported.py)
,我相信这是任何脚本语言(包括 Python)的基本功能。irc://freenode/python 坚持我必须使用import
,但我不明白如何使用。