У меня есть цикл, дающий мне три переменные
matteGroup
matteName
object
Я бы хотел бы создать вложенный словарь, содержащий все данные, например:
dictionary{matteGroup: {matteName: obj1, obj2, ob3} }
Я проверяю объекты один за другим, поэтому я хотел бы создать matteGroup
, если он не существует, создать matteName
, если он не существует, а затем создать или добавить имя объекта.
Я пробовал много решений, таких как обычные словари, defaultdict и некоторые настраиваемые классы, которые я нашел в сети, но я не смог сделать это должным образом. У меня хорошее вложение, которое я не могу добавить, или наоборот.
Это цикл
dizGroup = {}
dizName = {}
for obj in mc.ls(type='transform'):
if mc.objExists(obj + ('.matteGroup')):
matteGroup = mc.getAttr(obj + ('.matteGroup'))
matteName = mc.getAttr(obj + ('.matteName'))
if matteGroup not in dizGroup:
dizGroup[matteGroup] = list()
dizGroup[matteGroup].append(matteName)
if matteName not in dizName:
dizName[matteName] = list()
dizName[matteName].append(obj)
, в котором я получаю два словаря по отдельности, но это не так полезно! Есть подсказка?
Спасибо