Встречается на 1% собеседований по Python
Как сравнить два объекта, если они переданы в виде edge
Для сравнения объектов в Python можно использовать операторы == и is, но их поведение зависит от типа объектов и реализации __eq__.
Если объекты переданы как edge (например, в графах или структурах данных), важно учитывать их содержимое.
Пример:
python
class Edge:
def __init__(self, u, v):
self.u = u
self.v = v
text
def __eq__(self, other):
if not isinstance(other, Edge):
return False
return (self.u == other.u and self.v == other.v) or (self.u == other.v and self.v == other.u)text
Здесь `__eq__` проверяет, являются ли два ребра одинаковыми (с учетом направления).
**Использование:**
```python
edge1 = Edge(1, 2)
edge2 = Edge(2, 1)
print(edge1 == edge2) # TrueЕсли ребра должны быть строго упорядочены, уберите or в __eq__. Для хеширования в множествах или словарях также нужно реализовать __hash__.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы