I'm writing a silly program in python for a friend that prints "We are the knights who say 'Ni'!". then sleeps for 3 seconds, and then prints "Ni!" twenty times at random intervals using the random module's uniform() method. Here's my code:
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() (respectively), but I always get the same exception:
NameError: global name 'time' is not defined
What is causing this error and how can I fix my code?
Edit: quite frankly, I'm not sure what problem I was having either. I ran the code the next morning and it worked just fine. I swear that the code produced errors last night... Anyway, thanks for your insight.
importworks. Otherwise you will waste lots of time randomly changing your code trying to get it to work. Maybe you should ask another question about what you don't understand aboutimportimport spamto get a full module, then call each function asspam.eggs(), and you would usefrom spam import eggsto get a specific function and thespamnamespace so you could call the functioneggs().