[maya]MELからPythonへ変数を渡す際にエンコードを変える MEL to Python Variable

global proc BuildMenuItems(string $menuName){
    python("import buildMenu.buildMenuItems as bm");
	python("import codecs");
	
	python("import sys");
    python("print('sys.getdefaultencoding= '+sys.getdefaultencoding())");
	
	print("$menuName= "+$menuName+"\n");
	string $menuNameA = python("menuNameA='"+$menuName+"'");
	print("$menuNameA= "+$menuNameA+"\n");
    python("print('menuNameA= '+str(menuNameA))");
	
	string $menuNameUTF8 = python("menuNameUTF8='"+$menuName+"'.encode('utf_8')");
	print("$menuNameUTF8= "+$menuNameUTF8+"\n");
    python("print('menuNameUTF8= '+str(menuNameUTF8))");
    
	string $menuNameCP932 = python("menuNameCP932='"+$menuName+"'.encode('cp932')");
	print("$menuNameCP932= "+$menuNameCP932+"\n");
	python("print('menuNameCP932= '+str(menuNameCP932))");
	
	string $menuNameDecodeUTF8 = python("menuNameDecodeUTF8=b'"+$menuName+"'.decode('utf-8')");
	print("$menuNameDecodeUTF8= "+$menuNameDecodeUTF8+"\n");
    python("print('menuNameDecodeUTF8= '+str(menuNameDecodeUTF8))");
    
	string $menuNameDecodeCP932 = python("menuNameDecodeCP932=b'"+$menuName+"'.decode('cp932')");
	print("$menuNameDecodeCP932= "+$menuNameDecodeCP932+"\n");
	python("print('menuNameDecodeCP932= '+str(menuNameDecodeCP932))");
	
    //python("bm.main('u" + $menuName + "')");
    //python("bm.main(menuNameDecodeCP932)");
    python("bm.main()");
}

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です