В стандартной библиотеке Python существует множество классов для работы с коллекциями, включая UserDict из модуля collections. UserDict является подклассом встроенного словаря и предоставляет аналогичный функционал с возможностью его расширения. В этой статье мы рассмотрим, как создать собственный класс UniqueValueDict, наследуемый от UserDict, который будет обеспечивать уникальность значений в словаре. Для создания словаря с уникальными значениями мы будем переопределять метод __setitem__. Этот метод отвечает за установку значения по ключу в словаре. В нашем классе UniqueValueDict мы будем проверять, не существует ли уже заданного значения в словаре, и только в случае его отсутствия будем добавлять новое значение. В примере выше мы создаем экземпляр класса UniqueValueDict и добавляем в него несколько элементов. При попытке добавить значение 100 с ключом 3, которое уже существует с ключом 1, выводится сообщение Value 100 is not unique! и значение не добавляется в словарь. Класс UniqueV
Создание словаря только с уникальными значениями в Python
19 августа 202419 авг 2024
90
1 мин