Anaconda 名称错误:名称';转子';没有定义

Anaconda 名称错误:名称';转子';没有定义,anaconda,python-module,Anaconda,Python Module,我尝试在Spyder下导入并运行自制模块。 main.py程序 import rot f=rotor(b_x,b_y,b_z,x,y,z) def rotor(bx,by,bz,x,y,z): import numpy as np ... rot.py程序 import rot f=rotor(b_x,b_y,b_z,x,y,z) def rotor(bx,by,bz,x,y,z): impor

我尝试在Spyder下导入并运行自制模块。 main.py程序

    import rot
    f=rotor(b_x,b_y,b_z,x,y,z)
    def rotor(bx,by,bz,x,y,z):
        import numpy as np
        ...
rot.py程序

    import rot
    f=rotor(b_x,b_y,b_z,x,y,z)
    def rotor(bx,by,bz,x,y,z):
        import numpy as np
        ...
问题是:

文件“C:\Users\Professional.spyder-py3\my\u pro\jgut\main.py”,第93行,在 f=转子(b_x,b_y,b_z,x,y,z)

NameError:未定义名称“rotor”

即使在启动任何导入模块的蛮力启动后,问题也不会消失。 有没有办法同时启动所有导入的模块?或者有人面临这个问题

另外,在Anaconda重新安装后,今天出现了问题,因为IK多媒体应用程序无法使用(我刚刚删除了它们)。我从一开始就用蛮力启动了所有的mudules。

1)请不要在函数中导入模块

2) 未定义转子,因为它位于
rot
命名空间中。您可以通过
rot.rotor(args)
调用它。如果你想按你的方式调用它,你必须这样导入它:
从rot import rotor
从rot import*
(这会从rot模块导入所有内容,这是一个糟糕的做法-你应该只导入你需要的内容)


该错误与最后两段中所写的内容无关。

它可以正常工作,谢谢。但我不能完全理解出现的问题。如果我将numpy作为np导入,我就可以访问所有的numpy函数,并且它工作得很好。我的模块加载时会出现什么问题?numpy是否以其他方式设计?如果
将numpy导入为np
,则numpy名称空间将被引用为
np
,并使用
np.
前缀调用所有numpy函数。如果您只编写
import numpy
,则必须使用
numpy.
前缀调用每个numpy函数。我编辑了这个问题,因为这与Spyder无关。