-2

所以我正在研究一个在 1 到 20 之间随机生成一个数字的场景。我需要将这个数字存储一段时间,因为根据生成的数字,会有不同的结果。我知道您可以生成数字randrangerandint但我想知道您是否可以将其存储到变量中。例如,我试过这个:

def scenario():
   key = randrange(0, 21)

   if key > 10:
       print("A # greater than 10 has been generated")

   if key < 10:
       print("A # lesser than 10 has been generated")

   print(key) #To see what key was printed

我只是让它打印 1 和 2 以查看它是否有效,然后打印密钥以便我可以查看它是否已生成。有没有特定的方法可以使这项工作?因为当我尝试时,它会在我运行时将其留空。如果它不起作用,我真的不想太深入,但我只是问我是否遗漏了一些明显的东西或者它是否不起作用。无论哪种方式,如果它起作用或不起作用,我可能会找到解决方法。谢谢你的帮助。

4

3 回答 3

1

一切看起来都很好,但只要记住调用你的函数,并随机导入:

from random import *
def scenario():
   key = randrange(0, 21)

   if key > 10:
       print("A # greater than 10 has been generated")

   if key < 10:
       print("A # lesser than 10 has been generated")

   print(key) #To see what key was printed

scenario()

如果您不调用函数,则不会发生任何事情:

>>> def foo():
...     print 'hi'
... 
>>> #This is blank till I call foo()
... 
>>> foo()
hi
>>> 

此外,如果您不 import random,它将在以下位置引发错误key = randrange(0, 21)

>>> import random
>>> del(random) #Reverses import
>>> random.randrange(0, 21)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'random' is not defined
>>> 
于 2014-05-28T01:47:31.257 回答
1

通常,您的代码看起来不错。你错过了一些重要的部分吗?如果要使用它,则需要导入 randrange。你需要实际调用你的函数。除此之外看起来还不错

from random import randrange

def scenario():
   key = randrange(0, 21)

   if key > 10:
       print("A # greater than 10 has been generated")

   if key < 10:
       print("A # lesser than 10 has been generated")

   print(key) #To see what key was printed

scenario()
于 2014-05-28T01:35:32.287 回答
0
from random import randint
def scenario():
   key = randint(0, 20)

   if key > 10:
       print("A # greater than 10 has been generated")

   if key < 10:
       print("A # lesser than 10 has been generated")

   print(key) #To see what key was printed

scenario()
于 2014-10-13T18:30:25.640 回答