首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >确定PyQt是否在Maya内运行

确定PyQt是否在Maya内运行
EN

Stack Overflow用户
提问于 2014-02-13 06:57:11
回答 2查看 395关注 0票数 1

我一直在用PyQt为玛雅做一个工具。因此,它必须执行一个玛雅命令。这意味着该程序导入玛雅图书馆。当我在空闲(我使用Eclipse)上测试我的程序时,它会困扰我。我想阻止玛雅命令在空闲,只是启用玛雅。有没有办法找出它是运行在玛雅还是闲置?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-13 17:20:47

我所做的只是简单地将我的import封装在一个try..except块中:

代码语言:javascript
复制
try:
    from maya import cmds
except ImportError:
    print 'Not Maya'

我的期望是,这段代码在Maya之外是有价值的,但对于需要Maya的函数来说是没有价值的。

票数 2
EN

Stack Overflow用户

发布于 2014-02-13 22:49:26

mhlester的答案中的导入检查并不适用于所有可能的设置--如果在Eclipse中使用MayaPy.exe解释器,导入maya.cmds将为您提供一个空模块,而不是引发导入错误(如果启动maya.standalone,空模块将被替换,否则它们仍然存在,不会触发ImportError)

您可以通过查找模块中的实际命令来捕获该命令:

代码语言:javascript
复制
try:
    import maya.cmds as cmds
    cmds.about()
except  AttributeError:
    print "not Maya"  # cmds.about doesn't exist
except ImportError:
    print "not Maya"  # Maya modules not on the path
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21747260

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档