gpt4 book ai didi

python - 实例变量作为其他实例变量的函数

转载 作者:太空宇宙 更新时间:2023-11-04 09:23:12 25 4
gpt4 key购买 nike

是否可以将类中的实例变量定义为另一个类的函数?除非你一直重新定义“函数实例变量”,否则我还没有让它工作。

基本上,您可能会遇到这样一种情况:您有一个实例变量,它是一个整数列表,并且希望将这些整数的总和作为一个实例变量,每次更新列表时都会自动重新定义。

这可能吗?

class Example:
list_variable = []
sum_variable = sum(list_variable)

def __init__(self, list_variable):
self.list_variable = list_variable
return

除非您更改它,否则这将导致 sum_variable = 0

我知道这远不是一个主要问题,您可以将 sum_variable 定义为一个方法,也可以在每次更改 list_variable 时重新定义它,我只是想知道如果可以跳过这些事情/步骤。

最佳答案

Python 提供属性装饰器以在语法上完全相同地使用您的示例:

class Example:
list_variable = []

def __init__(self, list_variable):
self.list_variable = list_variable
return

@property
def sum_variable(self):
return sum(self.list_variable)

e = Example(list_variable=[10, 20, 30])
e.sum_variable # returns 60

关于python - 实例变量作为其他实例变量的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59054695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com