maya python 与 mel 间的数据传递方法总结-原创

一个网友的maya python 与mel语言变量传递方式,但感觉有些细节说的还不明确。现自己测试的代码分享给大家。

1、maya python 编程环境下,变量传递互相传递的方法:

1) mel 变量 传递给==> python 变量:

例如:

全局变量$abc 为提前在 mel编程环境下,定义的全局字符串变量,命令为

复制代码
global string $abc ; $abc="Namo Amitabha"; 

python 脚本中输入:

复制代码
import maya.mel as mel 
tjh = mel.eval('global string $abc;$abc=$abc;') 
print(tjh)

#返回结果为 Result: Namo Amitabha,从而实现了夸环境提取 mel 变量到 python 环境的方法。

2) python 变量 传递给==> mel 变量:同理

例如下:

复制代码
import maya.mel as mel
tjh = 'hello my friends'
mel.eval( ' global string $abc;$abc=` python  "tjh" ` ; ' ) 

#之后再mel环境下,输入

复制代码
print $abc ;  

得到 Result: hello my friends ,实现了python 到 mel 变量传递

2、maya mel 编程环境下,变量传递互相传递的方法:

1) python 变量 传递给==> mel 变量:

例如:

// 提前在 python 环境里第一个了全局变量

复制代码
 tjh ='Namo Amitabha'

在mel输入栏中输入:

复制代码
string $abc;
python("import maya.mel as mel") ; 
python("mel.eval('$abc = `python \"tjh\"` ;' )") ; 

// 结果得到 Result: amitabha ,实现了maya中获取python 全局变量值的目的//

2)mel 变量 传递给==> python 变量:

例如:

// 提前在 mel 环境里定义全局变量

复制代码
global string $abc = "hello my friends ";
python("import maya.mel as mel") ; 
python("tjh = mel.eval('global string $abc;$abc=$abc;') ") ; 

// python环境下输入

复制代码
print(tjh)   

得到结果 hello my friends ,实现了maya中获取mel 全局变量传递到python的目的//

南无阿弥陀佛

相关推荐
数据智能老司机1 天前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机1 天前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机1 天前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机1 天前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i1 天前
drf初步梳理
python·django
每日AI新事件1 天前
python的异步函数
python
这里有鱼汤1 天前
miniQMT下载历史行情数据太慢怎么办?一招提速10倍!
前端·python
databook1 天前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室1 天前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
倔强青铜三2 天前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试