我打算在 Maya 2013 中编写一个 python 脚本,该脚本使用 SWIG 包装的 pyd 库,该库是使用 Python 2.7 编译的。我无法在 Python 2.6.4 中重建 pyd,这是 Maya 绑定(bind)的版本。 Maya当然会给出这个错误
Module use of python27.dll conflicts with this version of Python. #
如何更改它以便 Maya 使用 Python 2.7?我已经尝试修改通常的(PYTHON_PATH、PYTHONHOME 等)环境变量,但没有成功。
最佳答案
Maya 不使用您安装的 Python,而是使用软件附带的自己的 2.6 版 Python。
但是,可以通过设置 PYTHONHOME 环境变量来更改它。以下文章介绍了如何执行此操作以及如何检查其设置是否正确:
基本上,这篇文章可以概括为3个步骤:
- 创建一个环境变量 PYTHONHOME 并设置它指向 您想要的 Python 版本(例如 C:\Python27)。
- 从“MayaDirectory”\Python\Lib\site-packages(例如 C:\Program Files (x86)\Autodesk\Maya2013\Python\Lib\site-packages)复制文件并将它们粘贴到“PYTHONHOME”\Lib\site-packages(例如 C:\Python27\Lib\site-packages)。
重新启动 Maya,看看是否一切正常!您可以通过运行(从 Maya 的“脚本编辑器”)检查正在使用哪个 Python:
import sys print sys.prefix
请特别注意第 2 步,文章强调了如何在更改环境变量后使 Maya 的库正常工作。请注意,如果您没有正确完成这最后一步,打印语句可能会开始出现在您的“输出窗口”而不是“脚本编辑器”中。
我已经测试了链接文章中的步骤,一切正常。版本更改适用于 Python 2.6 和 Python 2.7!但是,我还没有对所有内容进行广泛测试以了解 Python API 的所有方面是否都适用于 2.7。
关于python - 如何更改 Maya 2013 中的 python 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14656593/