2024-09-29 18:36:39 发布
网友
我在调用另一个内部的方法。我得到的这个脚本的错误是
NameError: name 'mnDialog' is not defined
有什么原因吗?我认为这与执行一个不在全局级别上的命令有关。(我没有印象到python有一个全局和局部变量声明)什么是正确的语法或者绕开它? 谢谢你抽出时间。在
您应该在顶层定义mnDialog。它不在正确的命名空间中。在
mnDialog
而且,在Python中嵌套函数(几乎)总是不必要的复杂化。在
问题是mnDialog没有从mnMakeWin中查找,而是传递了名称,当您不在正确的范围内时,它会被查找到。在
mnMakeWin
它可以传递函数而不是名称。我没有安装玛雅,所以无法尝试。在
否则,您将不得不在全局范围内定义mnDialog,这对我来说似乎是一个奇怪的限制
mnDialog是mnProgRun中的局部变量。不能在功能范围之外访问它。如果你想这样,就在适当的范围内定义它。在
mnProgRun
(i didn't have the impression that python has a global and local variable declaration.)
你有错误的印象。在
您应该在顶层定义
mnDialog
。它不在正确的命名空间中。在而且,在Python中嵌套函数(几乎)总是不必要的复杂化。在
问题是
mnDialog
没有从mnMakeWin
中查找,而是传递了名称,当您不在正确的范围内时,它会被查找到。在它可以传递函数而不是名称。我没有安装玛雅,所以无法尝试。在
否则,您将不得不在全局范围内定义mnDialog,这对我来说似乎是一个奇怪的限制
mnDialog
是mnProgRun
中的局部变量。不能在功能范围之外访问它。如果你想这样,就在适当的范围内定义它。在你有错误的印象。在
相关问题 更多 >
编程相关推荐