首页 > 解决方案 > 使用 __repr__ Python

问题描述

我希望能够运行此功能而无需添加.elements到最后。例如,如果seta=MySet([1,2,3])setb=MySet([1,10,11]),我可以运行setc=seta.intersection(setb.elements),但不能没有.elements。如何在不需要输入的情况下运行它.elements

class MySet:
    def __init__(self, elements):
        self.elements=elements
    def intersection(self, other_set):
        self.other_set=other_set
        new_set = []
        for j in other_set:
            if j in self.elements:
                new_set.append(j)
        new_set.sort()
        return new_set 

标签: pythonpython-3.x

解决方案


很容易,您所要做的就是访问.elements函数中的 。不需要__repr__

class MySet:
    def __init__(self, elements):
        self.elements=elements
    def intersection(self, setb):
        other_set = setb.elements
        new_set = []
        for j in other_set:
            if j in self.elements:
                new_set.append(j)
        new_set.sort()
        return new_set 

推荐阅读