Sobes.tech
Junior — Middle
108

Python'da değiştirilebilir ve değiştirilemez kümeler arasındaki fark nedir?

AI'dan gelen yanıt

sobes.tech yapay zeka

В Python существуют изменяемые (mutable) и неизменяемые (immutable) наборы:

  • set — изменяемый набор. Можно добавлять, удалять элементы после создания.
  • frozenset — неизменяемый набор. После создания его содержимое нельзя изменить.

Отличия:

  • Изменяемый set поддерживает методы add(), remove(), discard() и т.д.
  • frozenset не поддерживает изменение, но может использоваться как ключ в словарях или элемент других множеств, так как является хешируемым.

Пример:

s = set([1, 2, 3])
s.add(4)  # работает

fs = frozenset([1, 2, 3])
# fs.add(4)  # вызовет ошибку AttributeError

# frozenset можно использовать как ключ словаря
my_dict = {fs: "immutable set"}