使用导入函数时出现Python NameError
当我在一个Python(2.6.5)程序中导入并使用一个函数时,出现了一个错误:
from Localization import MSGR
title = Localization.MSGR("Logfile from Ctf2Rrl.")
NameError: global name 'Localization' is not defined
你能告诉我这是为什么吗?
谢谢,
2 个回答
2
这种形式的导入语句:
from foo import bar
并不会把模块名(foo
)引入到当前模块的命名空间中,而只是把从中导入的内容(bar
)引入进来。
所以,只有名字bar
被定义了,并没有定义你从哪个模块导入的`bar`。
4
如果你这样导入你的方法,你就可以使用 MSGR
,但不能使用 Localization.MSGR
:)
如果你想使用 Localization.MSGR
,你只需要 import Localization
就可以了。