Python 无法识别来自导入模块的变量
为什么我的程序无法识别模块Python 无法识别来自导入模块的变量,python,Python,为什么我的程序无法识别模块GuessLoop中模块randnomodule中的randNo变量 GuessLoop模块的相关代码: import sys import random import sys import time from randomnomodule import RandomNoGenerator RandomNoGenerator(1, 21) def GuessLoopFunc(guess): print(randNo) import random
GuessLoop
中模块randnomodule
中的randNo
变量
GuessLoop
模块的相关代码:
import sys
import random
import sys
import time
from randomnomodule import RandomNoGenerator
RandomNoGenerator(1, 21)
def GuessLoopFunc(guess):
print(randNo)
import random
def RandomNoGenerator(lowerBound, upperBound):
randNo = random.randrange(lowerBound, upperBound)
return randNo
randnomodule
模块的代码:
import sys
import random
import sys
import time
from randomnomodule import RandomNoGenerator
RandomNoGenerator(1, 21)
def GuessLoopFunc(guess):
print(randNo)
import random
def RandomNoGenerator(lowerBound, upperBound):
randNo = random.randrange(lowerBound, upperBound)
return randNo
我收到的错误消息:
…\GuessLoop.py”,GuessLoopFunc中的第11行打印(随机编号)
NameError:未定义名称“randNo”
RandomNoGenerator(1,21)
您只调用函数,但不保存其返回值。请改用此选项:
randNo=RandomNoGenerator(1,21)
这似乎奏效了,谢谢!我想,既然我将randomnomodule模块中函数的答案返回给randNo,如果我将randomnomodule导入另一段代码,它会在调用函数时输出randNo……这是像我这样处理代码的正确方法吗?@LuCS通过编写返回randNo
在randnomodule中,您不会在GuessLoop模块中自动定义randNo
。您可以通过调用函数并将其返回值保存到变量中来获取值。