我是在不使用/打開命名空間編輯器的情況下刪除命名空間(嵌套或非嵌套)的腳本,假設條件滿足的地方沒有內容。嵌套命名空間刪除
雖然這樣做,我得到了這個問題,在我無法使用cmds.namespace(rm="<string of the namespace>")
我已經有點找到了一個較長的解決方法,但我堅持的輸出是一個列表的unicode刪除嵌套的命名空間,我不能似乎將其轉換爲字符串。
nsLs = cmds.namespaceInfo(lon=True)
# nsLs Result: [u'UI', u'camera01', u'shared', u'v02', u'v03']
defaultNs = ["UI", "shared", "camera01"]
diffLs = [item for item in nsLs if item not in defaultNs]
# diffLs Result: [u'v02', u'v03']
for ns in diffLs:
nsNest = cmds.namespaceInfo(ns, lon=True)
# nsNest Result: [u'v02:new_run01']
# [u'v03:new_run01']
cmds.namespace(rm=str(nsNest))
因此,我已經使用不工作如以下錯誤的「刪除」標誌被遇到:
# Error: No namespace matches name: '[u'v02:new_run01']'.
# Traceback (most recent call last):
# File "<maya console>", line 13, in <module>
# RuntimeError: No namespace matches name: '[u'v02:new_run01']'. #
上面的代碼我已輸入的是純粹爲嵌套的命名空間,儘管它仍然沒有達到結果,也不是非常靈活(假設在場景內只有1個嵌套級別),是否有任何方法可以糾正這種情況?
此外,不勝感激,如果任何人有刪除命名空間如果沒有命名空間編輯器的使用,當然任何解決方案/方法...
這是工作。想知道是否知道任何方法來確定名稱空間的嵌套級別? – yan
然後張貼在這裏。如果您發現答案有幫助,請考慮投票。 – kartikg3