我正在努力加快Maya Python的速度,所以我一直在阅读这本书(http://www.maya-python.com/)这里有一个在线pdf ...我在一个部分(The For Statement)我没有得到正确的结果,但我也没有得到任何错误。如果有人能看到这个并给我一个关于什么导致问题那么好的想法。
因此它可以创建3个文件节点,并且应该将所有3个节点重命名为前缀“dirt_”。但它只重命名'file1'而不是其他两个节点
以下是流程:
#The FOR statement
import maya.cmds;
def process_all_textures(**kwargs):
pre = kwargs.setdefault('prefix', 'my_');
textures = kwargs.setdefault('texture_nodes');
new_texture_names = [];
for texture in textures:
new_texture_names.append(
maya.cmds.rename(
texture,
'%s%s'%(pre, texture)
)
);
return new_texture_names;
#create new Maya scene & list 3 file nodes & print their names
maya.cmds.file(new=True, f=True);
textures = [];
for i in range(3):
textures.append(
maya.cmds.shadingNode(
'file',
asTexture=True
)
);
print(textures);
#pass new texture list to process_all_textures() func and print resulting names
new_textures = process_all_textures(
texture_nodes = textures,
prefix = 'dirt_'
);
print(new_textures);
[u'file1', u'file2', u'file3']
[u'dirt_file1']
答案 0 :(得分:1)
行private void Button_Click_1(object sender, RoutedEventArgs e)
{
User user = dataGrid.SelectedItem as User;
if (user != null)
{
IList<User> users = dataGrid.ItemsSource as IList<User>;
if (users != null)
users.Remove(user);
dataGrid.ItemsSource = null;
dataGrid.ItemsSource = users;
}
}
必须缩进四个空格(而不是八个空格)。
在您的情况下,return new_texture_names
语句会停止该函数并立即返回该值。
return