实现python集逻辑(如get和set)

2024-03-29 00:04:58 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我要上课

import numpy as np
class MyClass:
    def __init__(self):
       self.means = np.zeros(5)

我有一些函数需要一个ndarray对象……但是我有一些函数调用,我需要将我的代码与设置对象的平均值的列表集成。一旦发生这种情况,一切都会破裂。你知道吗

我需要一种方法来强制类将传入列表设置为ndarray。查看python文档中的__set__ and __setattrib__似乎这是可能的……但是在阅读了文档之后,我仍然对如何获得所需的行为感到困惑。你知道吗

我想要的是确保当其他代码说

MyClass.means = [0,0,0,0]

平均值设置为:np.array([0,0,0,0])


Tags: 对象代码文档importselfnumpy列表def
1条回答
网友
1楼 · 发布于 2024-03-29 00:04:58

使用属性设置器:

class MyClass(object):
    def __init__(self):
        self._means = np.zeros(5)

    @property
    def means(self):
        return self._means  # Note the underscore

    @means.setter
    def means(self, value):
        # Convert to np array before setting
        self._means = np.array(value)

相关问题 更多 >