类定义中的静态初始化器

时间:2019-02-06 17:22:23

标签: python-3.x

我有一个要实例化多次的类。类成员之一是固定大小的数组,我在其中存储温度数据。物理设备具有多个传感器,每个传感器都有一个与之关联的类的实例。

我发现,当我在定义类时初始化数组时,即

$('#save_edit_user').on('click', function () {
    var isValid = $("#edit_user").validate().form() && $("#edit_user").validate().element("#edit_user_email");
    //check current ajax call by $.active 
    //the form is not submitted before 0 ajax is running
    if (isValid && $.active == 0){
     // my save logic

    }
});

将所有类实例的数据映射到相同的地址空间。因此,由于所有实例都在彼此之上进行写入,因此数据遭到破坏。

花了我一段时间才找到根本原因,但是解决方案很简单,将初始化移到__init:

class myClass:
    myArray = [0] * 100

我找不到任何表明这是预期行为的内容(或者我误解了文档)。所以我的问题是,这是我的python实现中的异常还是预期的?

我来自Java / C#/ Swift背景,所以这让我措手不及。

0 个答案:

没有答案