You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Maya脚本编辑器中已加载脚本的文件路径?

在Maya中获取当前运行脚本的文件夹路径

有两种可靠的实现方式:

方法1:用Python内置的__file__变量

当你从脚本编辑器打开外部脚本文件并运行时,__file__会自动指向当前脚本的完整路径,搭配os.path模块就能提取文件夹路径:

import os
# 获取脚本文件的完整路径
script_full_path = __file__
# 提取所在文件夹
script_folder = os.path.dirname(script_full_path)
print(script_folder)

运行后会直接输出示例里的C:/Users/Username/Desktop。

方法2:调用Maya内置命令获取编辑器标签路径

如果__file__在旧版Maya里失效,可以通过Maya的Mel命令获取当前激活的脚本编辑器标签对应的文件路径:

import maya.mel as mel
import os
# 获取当前聚焦的脚本编辑器控件
editor_control = mel.eval('getPanel -toControl `getPanel -withFocus`;')
# 获取该控件关联的脚本文件路径
script_full_path = mel.eval(f'scriptEditorInfo -file "{editor_control}";')
# 提取文件夹路径
if script_full_path:
    script_folder = os.path.dirname(script_full_path)
    print(script_folder)
else:
    print("当前没有打开外部脚本文件")

注意点

  • 方法1简洁通用,适合2018及以后的新版Maya;
  • 方法2兼容性更强,能覆盖__file__无法生效的特殊场景;
  • 如果是直接在脚本编辑器里手写代码运行(不是打开外部文件),两种方法都拿不到有效路径,因为没有关联的外部文件。

内容的提问来源于stack exchange,提问作者Marten Zander

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 15:31:12