定义

我一直在做一个大型的任务,我几乎完成了,除了我需要帮助编写Set容器的__str____repr__函数。

我从来没有这样做,我不知道该怎么做。 在互联网上搜索,我仍然坚持。

我试过类似的东西:

'%s(%r)' % (self.__class__, self)

我需要打印出如下所示的图像:

'set([ELEMENT_1, ELEMENT_2,..., ELEMENT_N])'

我的元素存储在我编写集合容器的数组类中。 我用自己for item in selfif item in self for item in self访问它

请帮忙?


我怀疑以下方法可行:

def __repr__(self):
    return 'set([%s])' % ', '.join(self)

看到这个答案详细说明__str____repr__之间的区别。

一个基本的实现将会是这样的:

def __repr__(self):
    return 'set(%r)' % [item for item in self]

像这样简单的事情可能会足够好,并会照顾这两种方法:

class Set(object):
    def __init__(self):
        self.array = ...

    def __repr__(self):
        return '{}({!r})'.format(self.__class__.__name__, self.array)

    __str__ = __repr__
链接地址: http://www.djcxy.com/p/28305.html

上一篇: Defining

下一篇: Log IPython output?