我正在为一个打印“我们是说’Ni’的骑士!”的朋友用python编写一个愚蠢的程序。然后休眠 3 秒,然后打印“Ni!”使用 random
模块的 uniform()
方法随机间隔二十次。这是我的代码:
from time import sleep
import random
def knights_of_ni():
generator = random.Random()
print "We are the knights who say 'ni'."
sleep(3)
for i in range(0,20):
print "Ni!"
sleep(generator.uniform(0,2))
I’ve tried to import this module by typing in the interpreter from silly import knights_of_ni()
and import silly
, then calling the function with either knights_of_ni()
or silly.knights_of_ni()
(分别),但我总是得到同样的例外:
NameError: global name 'time' is not defined
是什么导致了这个错误,我该如何修复我的代码?
编辑:坦率地说,我也不确定自己遇到了什么问题。第二天早上我运行了代码,它工作得很好。我发誓昨晚的代码产生了错误……无论如何,感谢您的洞察力。
原文由 Rafe Kettler 发布,翻译遵循 CC BY-SA 4.0 许可协议
这不可能。您的代码示例与产生该错误的代码不同。
也许你有
time.sleep(..)
而不是sleep(..)
。您已完成from time import sleep
。要使用time.sleep(..)
表格,您必须import time