本质上,这就是我想要做的:
我有一组要添加对象的集合。这些对象有它们自己的相等方法,并且一个集合不应该有一个元素等于集合中的另一个元素。但是,当尝试插入一个元素时,如果它等于另一个元素,我想记录这两个元素的合并版本。也就是说,对象具有在其相等方法中未考虑的“辅助”字段。添加完内容后,我希望元素的“辅助”字段包含我尝试添加的相等元素的所有“辅助”字段的组合。
我的想法是,好吧,在将一个元素添加到集合之前,检查它是否已经在集合中。如果是这样,请将其从集合中拉出,组合两个元素,然后将其放回。但是,Python 集合中的 remove 方法不返回任何内容,而 pop 方法返回任意元素。
我可以用 Python 中的集合做我想要做的事情,还是我在叫错树(什么是正确的树?)