繁体   English   中英

在Python中导入模块和函数时出现问题

[英]Problem importing modules and functions in Python

我有两个文件:在其中一个文件中(名为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()”。 我不知道为什么会收到此错误,因为我还有其他文件和模块,它们具有类似的特性,可以正常运行。

任何想法?

您需要像这样使用它:

import myrandom

x = myrandom.spinner()

或直接导入:

from myrandom import spinner
x = spinner()

或使用星号导入:

from myrandom import *
x = spinner()

您应该这样导入它:

import myrandom

x = myrandom.spinner()

或像这样:

from myrandom import spinner

x = spinner()

或像这样:

from myrandom import *

x = spinner()

可以在此处找到有关不同导入方式的说明: 使用Python导入模块-最佳做法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM