变量资源管理器更改数据类型

2024-10-01 04:44:41 发布

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

我使用的是Spyder 3.2.7和Variable explorer。我写了一个基于字典的定制类

class DateScheme(dict):
    """
    Container object for Date Schemes
    Dictionary-like object that exposes its keys as attributes.
    """

    def __init__(self, name):
        self.name = name
        # other keys omitted

    def __dir__(self):
        return self.keys()

    def __setattr__(self, key, value):
        self[key] = value

    def __getattr__(self, key):
        try:
            return self[key]
        except KeyError:
            raise AttributeError(key)

DateSchemeInstance = DateScheme("NewName")

当我运行上面的代码时,我在变量资源管理器中看到了DateSchemeInstance,变量的类型是DateScheme(正如预期的那样)。当我双击它时,我看到了它的描述,但是窗口标题已经是DateSchemeInstance - Dictionary (1 elements),而且DateSchemeInstance的类型实际上已经更改为dictionary,使得原始类的方法不可用。你知道吗

我错过了什么还是这是一个错误?你知道怎么解决这个问题吗?你知道吗


Tags: keynameself类型dictionaryreturnobjectvalue
1条回答
网友
1楼 · 发布于 2024-10-01 04:44:41

Spyder maintainer here)这看起来确实像个bug。请在我们的issues tracker中打开一个问题,发布上面的代码,以便我们可以调查在这种情况下发生了什么。你知道吗

相关问题 更多 >