检查Python脚本是在Maya编辑器内运行或外部运行

  • Post author:
  • Post category:python




问题描述:

在开发Maya批处理脚本时,通常会需要两个版本:

  1. 一个可以在Maya内部的脚本编辑器中执行;
  2. 另一个在外部独立运行(在后台启动maya进程去执行脚本)

    那么Maya脚本内部需要对运行环境进行检查。



解决方法

  1. 第一种解决方法是通过 sys.stdout 来查看输出流的类型,如果是在Maya脚本编辑器内部 则类型为 maya.Output,反之则为 File
import sys

def is_interactive_maya():
    return type (sys.stdout) != file
  1. 第二种方法可以直接尝试对maya.standalone进行初始化。由于maya.standalone只能在maya编辑器外部进行初始化,因此也能判断出执行环境。
try:
	from maya import standalone
    standalone.initialize()
except:
	pass


相关问题的讨论



版权声明:本文为weixin_39868379原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。