函数未为变量返回随机整数。

3

我有一个非常简单的问题,当我运行以下代码时:

from random import randint

def create_random():
  x = random.randint(1,4)
  return x 

print(create_random)

输出结果如下:
< function create_random at 0x7f5994bd4f28 >

注意:每次运行代码时,“0x7f”和“f28”之间的每个字符都是随机的。
我的目标是能够多次调用该函数,每次调用时将x分配一个介于1和3之间的新整数值。

5
你忘记调用函数了。试试使用 print(create_random()) 吧? - hilberts_drinking_problem
请注意:原始代码无法正常工作。如果您使用 from random import randint,则必须使用 x = randint(1,4)(不需要模块名称)。如果您使用 import random,则可以使用带有模块名称的调用运行。 - Matthias
3个回答

6

您实际上并没有调用该函数。要调用它,您需要执行以下操作:

print(create_random())

刚才您打印的是函数的引用,但在这种情况下对您并没有太大帮助。


哎呀,我很尴尬地承认我花了一个多小时思考为什么我错了,我想在我的脑海中我假设我不需要调用它,因为没有参数。如果你还没有猜到,我是相当新的。不过还是要感谢大家的帮助! - Atronach41

0

你最后一行没有什么作用,因为你想打印的是 'create_random' 而不是一个变量。如果你想调用一个函数,它必须要有 (). 所以你应该调用它并把它放在 print 函数里:

print(create_random())


0

你必须调用该函数,例如:

print(create_random())

在这个函数中,还有这一行代码:
x = random.randint(1,4)

应该只是:

x = randint(1,4)

既然你使用了from ... import ...语句。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接