我知道这个问题看起来很愚蠢和简单:但是让我给你一些背景。Antcgi发布了一个可以在这里购买的色带构建器脚本:https://ko-fi.com/s/73d8faa0e8
现在我尝试让他的脚本运行:我将“导入antcgiRibbon antcgiRibbon.antcgiRibbonUI()”放在一个空白python选项卡中,并在粘贴到我的脚本文件夹后尝试运行它(我正在运行maya 2022.3)。
只有一个问题:我一直在犯错误
"# Error: ImportError: file d:/Users/Username/Documents/maya/2022/scripts\antcgiRibbon.py line 1: cannot import name 'cmds' from 'maya.cmds' (C:\Program Files\Autodesk\Maya2022\Python37\lib\site-packages\maya\cmds__init__.py) #"现在我不能在这里发布他的脚本,因为这在道德上是不道德的:但是作为一个编写python代码的人,我能够剖析他的脚本,我注意到他导入命令的方式不同。
当我导入maya命令时,我通常从
import re
import maya.cmds as cmds
import maya.mel as mel
import pymel.core as pm
from functools import partial 他的玛雅导入命令以
from maya.cmds import cmds
from pymel.core import core as pm
from maya.mel import mel
from functools import partial现在,如果我用我的命令导入替换他的命令导入,我可以让UI加载:但是所有的按钮都不能工作。当我使用他的命令导入行尝试时,脚本直接拒绝工作,我得到了错误。
"# Error: ImportError: file d:/Users/Username/Documents/maya/2022/scripts\antcgiRibbon.py line 1: cannot import name 'cmds' from 'maya.cmds' (C:\Program Files\Autodesk\Maya2022\Python37\lib\site-packages\maya\cmds__init__.py) #"
据我所研究,“将maya.cmds导入为cmds”与“从maya.cmds导入cmds”之间似乎没有差别,除非有人能够解释为什么其中一个部分工作,而另一个则不起作用。它是否与已安装版本的python有关?我的版本是旧的还是太新的?什么会导致玛雅的错误?
这也不仅仅是这个脚本,如果我尝试运行我输入的任何脚本,"from maya.cmds import“拒绝工作。
发布于 2022-07-24 00:11:15
在“导入maya.cmds as cmds”和“从maya.cmds导入cmds”之间似乎没有差别。
有很大的不同。
第一个是导入maya.cmds。
第二个是导入maya.cmds.cmds。
“从y导入x”期望x是y内部的一个变量,或者y下面的一个子模块。
https://stackoverflow.com/questions/73094923
复制相似问题