【发布时间】:2020-05-12 18:48:24
【问题描述】:
我有一个数据类,我想在初始化类时设置一个值。
@dataclass
class classA:
__data: DataFrame
__Limit: float
__totalLimit: float = field(init=False)
def __post_init__(self):
# This Does not work
__setTotalLimit()
# This works when i put the logic in.
# self.__totalLimit = self.__data['Amount'].sum()
def __setTotalLimit(self):
self.__totalLimit = self.__data['Amount'].sum()
这是我得到的错误: NameError: name '_classA__setTotalLimit' 未定义
基本上,只要传入数据,我就需要汇总一列并将其设置为变量,因为它将在整个脚本中使用。
【问题讨论】:
-
为什么要修改数据类中的所有名称?
-
您不是在尝试将函数传递 到
__post_init__,而是在尝试从另一个方法调用方法。这与数据类无关。