私は3つの変数を与えるループを持っています
matteGroup
matteName
object
次のようなすべてのデータを保持するネストされた辞書を作成したいと思います。
dictionary{matteGroup: {matteName: obj1, obj2, ob3} }
オブジェクトを1つずつチェックしているので、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)
これで2つの辞書を別々に取得できますが、あまり役に立ちません! ヒントはありますか?
ありがとう