我一直在用PyQt为Maya制作一个工具。所以,它必须执行玛雅命令。这意味着程序导入Maya库。当我在IDLE上测试我的程序(我使用Eclipse)时,它困扰了我。我想阻止IDLE上的Maya Command,并在Maya上启用。有没有办法找到它在Maya或IDLE上运行?确定PyQt是否在Maya中运行
1
A
回答
2
我要做的就是简单地总结我import
在try..except
块:
try:
from maya import cmds
except ImportError:
print 'Not Maya'
我的期望是有值玛雅超出此代码,而不是需要一个玛雅API函数。
+0
+1为简单的方法 –
+0
谢谢。我陷入了不必要的研究。 :) –
1
mhlester的答案中的导入检查不适用于所有可能的设置 - 如果您在Eclipse中使用MayaPy.exe解释器,导入maya.cmds将为您提供一个空模块,而不是引发导入错误(空模块如果你开始一个maya.standalone不过其他情况仍然存在,不会引发一个ImportError)
你能赶上被替换的是通过查找该模块内的实际命令:
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. 确定进程是否正在运行?
- 2. 确定作业是否正在运行
- 3. 如何在Maya中停靠PyQt窗口
- 4. PyQt在Maya中的可停靠窗口
- 5. 确定是否在表达式中按下键(PyQT)
- 6. PyQt和Maya,线程= False?
- 7. 如何确定块是否在运行时同步运行
- 8. 如何确定是否在Mono运行时运行
- 9. 在MSBuild中可以确定我是否在Visual Studio中运行
- 10. Pyqt中的Maya Outliner不收取费用
- 11. 如何确定Toolpart是否在SharePoint Designer中运行
- 12. 确定进程是否在lxc/Docker中运行
- 13. 如何确定VBScript是否在RDP控制台中运行?
- 14. 确定脚本是否在RStudio笔记本中运行
- 15. 确定脚本是否在SGE中运行
- 16. 确定程序集是否在ASP.NET或Windows服务中运行
- 17. 确定代码是否在Silverlight中运行的编程方法?
- 18. 确定脚本是否在pythonw中运行?
- 19. 如何确定类库是否在Windows服务中运行?
- 20. 如何确定代码是否在doctest中运行?
- 21. 如何确定.NET代码是否在ASP.NET进程中运行?
- 22. 如何确定我的JavaScript是否在nodejs中运行
- 23. 确定是否在MATLAB中运行x64或x86操作系统
- 24. ASP.NET网站确定是否在Test vs Prod环境中运行
- 25. 确定Azure Web或Worker角色? (备用:确定是否在IIS中运行?)
- 26. 确定Node.js中是否存在SQLite行
- 27. 是否有可能确定R是否在Unix或Windows环境中运行
- 28. 确定一个可执行文件是否正在运行
- 29. 确定我是在Cloudhub上运行还是在本地运行
- 30. 如何在maya中运行多个选定对象的命令
你能放在try-except块中使用Maya命令的部分?如果Maya命令失败,那么您知道您没有在Maya中运行,然后可以运行不同的代码。 – Schollii