这可能很奇怪,但我想声明一个没有固定值的变量,但是以某种方式“链接”到函数的结果。目标是让最终用户操作变量,但每次使用变量的值时,其值都可能会发生变化。
这是我得到的当前结果:
from random import randint
def randomfun():
return randint(1, 100)
an_int = randomfun
print an_int # Print the function object
print an_int() # Print the result of randomfun()
我希望print an_int
实际调用randomfun()
,但无需添加括号,an_int
的类型应为randomfun
返回类型。
答案 0 :(得分:4)
an_int
是一个对象。除非你改变它,否则它不会改变它的值。但是,您可以更改对象的表示方式:
from random import randint
class RandomFun(object):
def __str__(self):
return str(randomfun())
def randomfun():
return randint(1, 100)
an_int = RandomFun()
print an_int
print an_int
收益率(类似)
57
19