【发布时间】:2023-04-11 06:10:01
【问题描述】:
这可能很奇怪,但我想声明一个没有固定值的变量,但以某种方式“链接”到函数的结果。目标是最终用户操作变量,但每次使用变量的值时,其值都可能发生变化。
这是我得到的当前结果:
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的返回类型。
【问题讨论】:
-
我不明白这个问题。要声明一个没有值的变量,请将其声明为 None。 “链接”在某种程度上是没有意义的,很难理解你的意思。您可以在范围内操作变量而不会出现任何问题。如果您想有时更改变量,而不是其他情况,则需要抽象(访问器方法)。你是否试图让它有 50% 的机会调用 randfun,并有 50% 的机会改变值?
-
对不起,我误会了。
-
你可能知道这一点,但在程序中遇到这样的变量可能会导致一些非常令人沮丧的调试会话。
-
是的,不用担心,我会把它非常说清楚,并且只在非常特殊的情况下使用它。
标签: python