1

我有以下代码:

import maya.cmds as cmds

list = cmds.ls(sl=True)

my_list = [object.upper() for object in list]

print(my_list)

但是,即使它在最后的 print 语句中打印出大写名称,它也不会更改对象的名称。

4

3 回答 3

2

你想要的是

import maya.cmds as cmds

list = cmds.ls(sl=True)
for n in list:
    cmds.rename(n, n.upper())

new_list = cmds.ls(sl=True)
print(new_list)

此处通过示例记录了这一点。

此代码将重命名您中的所有对象,如果您愿意,list也可以使用您选择的任何对象。cmds.select()

于 2016-02-10T23:31:54.303 回答
0

这很hackish,老实说我不推荐它,但如果你真的想这样做,你可以这样做:

def global_var_to_upper(var):
    for _ in globals():
        if var is globals()[_]:
            globals()[str(_).upper()] = globals()[_]
            del globals()[_]
            break

abc = 123
global_var_to_upper(abc)
print(ABC) # prints 123
于 2016-02-10T23:34:00.143 回答
0

“变异”字符串的正确方法是使用切片和连接通过从旧字符串的部分复制来构建新字符串。

于 2016-02-10T23:24:58.653 回答