我正在尝试列出一个节点的所有属性及其值(来自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'
在这种情况下,第一个属性是“ Message”并且没有值。我该如何绕过这个?
答案 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