【问题标题】:function attribute lifespan功能属性寿命
【发布时间】:2019-10-25 21:30:07
【问题描述】:

我正在编写一个函数的备忘录,我想在函数对象中存储一个属性。 函数属性在进程的生命周期内是否可用?如果不是,我怎么能做到这一点?

谢谢

【问题讨论】:

  • 不清楚你在问什么。
  • 您存储在程序中全局对象和变量中的所有内容都会在程序的生命周期内持续存在。为什么函数属性会有所不同?

标签: python memoization function-attributes


【解决方案1】:

我将此问题解释为“我可以合理地期望函数对象的用户定义属性在我的程序的整个生命周期中持续存在吗?例如,在这段代码中:

def f():
    f.x += 1
    return f.x

f.x = 0

print(f())
print(f())
print(f())

#desired result:
#1
#2
#3

……能保证f.x不会在中途自发贬值吗?”

函数fx 属性将在f 的整个生命周期内保留其值。在全局范围内定义的函数在程序的整个生命周期内都存在。因此,您可以安全地使用f.x 进行记忆。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-20
    相关资源
    最近更新 更多