Вопрос проверяет понимание того, почему структуры на основе хеш-таблиц не поддерживают индексирование.
Во множестве элементы не имеют фиксированного порядка, поэтому индекс не имеет смысла. Множество хранит элементы в хеш-таблице, а их расположение зависит от хеша. Порядок может меняться между запусками программы. Поэтому доступ возможен только через перебор или поиск по значению.
Индексирование возможно только в структурах:
с фиксированным порядком
с последовательным хранением
Например:
список
кортеж
Множество этим условиям не соответствует.
Множество хранит элементы:
в хеш-таблице
по вычисленному хешу
Это означает:
элементы распределяются по ячейкам
порядок не определён
Пример:
s = {10, 20, 30}
for x in s:
print(x) # порядок не гарантирован
Если нужен доступ по индексу, обычно делают:
lst = list(s)
print(lst[0])
Но это уже работа со списком, а не множеством.
Множество не поддерживает индексацию, потому что не хранит порядок элементов. Оно оптимизировано для быстрого поиска по значению, а не для доступа по позиции.