Python编写一个类,实现添加元素(如果存在则不添加),删除元素,弹出元素(pop),集合差集运算,集合并集运算,判断两个集合是否相等,>=运算符重载(集合包含关系),支持内置函数len,清空集合所有元素。
时间: 2024-02-06 12:10:14 浏览: 68
Python 列表中的修改、添加和删除元素的实现
5星 · 资源好评率100%
下面是一个实现了上述功能的集合类:
```python
class MySet:
def __init__(self):
self.items = []
def add(self, item):
if item not in self.items:
self.items.append(item)
def remove(self, item):
if item in self.items:
self.items.remove(item)
def pop(self):
return self.items.pop()
def difference(self, other):
return MySet([item for item in self.items if item not in other.items])
def union(self, other):
return MySet(self.items + [item for item in other.items if item not in self.items])
def __eq__(self, other):
return set(self.items) == set(other.items)
def __ge__(self, other):
return set(self.items).issuperset(set(other.items))
def __len__(self):
return len(self.items)
def clear(self):
self.items = []
```
这个类以列表作为内部的数据存储结构,并提供了相应的方法来实现集合的基本操作。其中,`add()` 方法用于添加元素,`remove()` 方法用于删除元素,`pop()` 方法用于弹出元素,`difference()` 方法用于计算集合差集,`union()` 方法用于计算集合并集,`__eq__()` 方法用于判断两个集合是否相等,`__ge__()` 方法用于重载 `>=` 运算符,支持判断集合包含关系,`__len__()` 方法用于支持内置函数 `len()`,`clear()` 方法用于清空集合中的所有元素。
阅读全文