我有两个文件:在其中一个文件中(名为myrandom
),我定义了一个名为spinner
的函数,该函数将从1到6中选择一个随机数并返回其值。在名为main
的第二个文件中,我导入了第一个文件(作为模块),并且还调用了spinner
函数。
这是文件myrandom
的代码:
def spinner():
import random
val = random.choice([1, 2, 3, 4, 5, 6])
return val
这是main
的代码:
import myrandom
x = spinner()
print(x)
我的问题是,当我运行main
时,收到以下错误消息:“ NameError:未定义名称spinner()”。我不知道为什么会出现此错误,因为我还有其他具有类似特征的文件和模块,可以正常运行。
有什么主意吗?
答案 0 :(得分:0)
您需要像这样使用它:
import myrandom
x = myrandom.spinner()
或直接导入:
from myrandom import spinner
x = spinner()
或使用星号导入:
from myrandom import *
x = spinner()
答案 1 :(得分:0)
您应该这样导入它:
import myrandom
x = myrandom.spinner()
或类似这样:
from myrandom import spinner
x = spinner()
或类似这样:
from myrandom import *
x = spinner()
有关不同导入方式的说明,请参见:Importing modules in Python - best practice