如何使用Maya python列出一个节点属性的所有值?

时间:2018-10-05 17:21:58

标签: python maya

我正在尝试列出一个节点的所有属性及其值(来自Mash网络),但是即使我使用try / except循环,当属性没有值时也会出现错误

attributes = cmds.listAttr('MASH_A_Repro')
for attribute in attributes:
    myAttr='MASH_A_Repro.'+attribute
    try :
        print 'Attribute %s Value %s' % (attribute, cmds.getAttr(myAttr) )
    except KeyError:
        print 'erreur'  

错误:RuntimeError:文件第10行:邮件属性没有数据值。 #

在这种情况下,第一个属性是“ Message”并且没有值。我该如何绕过这个?

1 个答案:

答案 0 :(得分:0)

您想解决消息属性-错误消息指出它们没有数据。

这将使您免于炸毁:

REST_REQUEST

但是您仍然会得到一个烦人的错误打印输出。您可以通过将import maya.cmds as cmds for item in cmds.listAttr('polyPlane1'): try: print cmds.getAttr('polyPlane1.' + item) except RuntimeError: pass 调用限制为可写属性来进行廉价的预检查:

listAttr