在浏览了所有可能的资源之后,我得出的结论是,我需要紧急帮助才能将全局变量从函数传递给 Python 模块中的其他函数。
其实我是在 Autodesk Maya2010 中写一个小的 UI,这里简单介绍一下这个问题。
在下面的代码中,我有两个模块级全局变量,我在一个函数中为它们赋值。现在,如果我直接传递这些变量(即不转换函数调用并将其分配为字符串),那么代码可以正常工作,但是由于按钮函数的命令标志只允许字符串或函数名,因此我坚持这个调用函数的方式。
我得到的结果是:
temp_var=无
a_Window=无
我对此一无所知。
当我使用字符串值作为函数调用时,谁能指出到底发生了什么?
**The sample code**:
import maya.cmds;
temp_var=None;
a_Window=None;
def im_PrimaryFunc():
imSecondary_func();
def imSecondary_func():
global a_Window;
global temp_var;
a_Window=maya.cmds.window(title="Something");
a_layout=maya.cmds.columnLayout(adj=1,rs=10);
temp_var=maya.cmds.createNode("polySphere");
func_call="a_calledFunc(a_Window,temp_var)";
maya.cmds.button(label="call_aFunc",align="center",command=func_call);
maya.cmds.showWindow(a_Window);
def a_calledFunc(arg00,arg01):
print(arg00);
print(arg01);