3

我的目标是在 Maya 2013 中编写一个 python 脚本,该脚本使用一个使用 Python 2.7 编译的 SWIG 包装的 pyd 库。我无法在 Python 2.6.4 中重建 pyd,这是 Maya 绑定的版本。玛雅当然会给出这个错误

Module use of python27.dll conflicts with this version of Python. # 

如何更改它以使 Maya 使用 Python 2.7?我已经尝试修改通常的(PYTHON_PATH、PYTHONHOME 等)环境变量,但没有成功。

4

1 回答 1

4

Maya 不使用您安装的 Python,而是使用它自己的 2.6 版本的 Python,该版本包含在软件中。

但是,可以通过设置 PYTHONHOME 环境变量来改变它。以下文章解释了如何执行此操作以及如何检查其设置是否正确:

在 Maya 中选择 Python

基本上,这篇文章可以总结为3个步骤:

  1. 创建一个环境变量 PYTHONHOME 并将其设置为指向您想要的 Python 版本(例如 C:\Python27)。
  2. 从“MayaDirectory”\Python\Lib\site-packages 复制文件(例如 C:\Program Files (x86)\Autodesk\Maya2013\Python\Lib\site-packages)并将它们粘贴到“PYTHONHOME”\Lib\site -包(例如 C:\Python27\Lib\site-packages)。
  3. 重新启动 Maya 并查看是否一切正常!您可以通过运行(从 Maya 的“脚本编辑器”)检查正在使用的 Python:

    import sys
    print sys.prefix
    

特别注意第二步,文章强调了如何在更改环境变量后使 Maya 的库正常工作。请注意,如果您没有正确完成最后一步,打印语句可能会开始出现在您的“输出窗口”而不是“脚本编辑器”中。

我已经测试了链接文章的步骤,一切正常。版本更改适用于 Python 2.6 和 Python 2.7!但是,我还没有对所有内容进行广泛的测试,以了解 Python API 的所有方面是否适用于 2.7。

于 2013-02-05T11:10:12.843 回答