Почему замороженные мультимножества в Python не учитывают повторяющиеся элементы?Python

Программы на Python
Ответить
Anonymous
 Почему замороженные мультимножества в Python не учитывают повторяющиеся элементы?

Сообщение Anonymous »

Я работаю с деревьями выражений, которые эквивалентны друг другу с точки зрения коммутативности. Чтобы добиться этой эквивалентности, я подумал, что буду использовать замороженные мультимножества для хранения операндов, поскольку они хешируются (в отличие от диктовок), неупорядочены (в отличие от кортежей) и допускают повторяющиеся элементы (в отличие от наборов).
Но замороженные мультимножества, похоже, работают не так, как я себе представлял. Они рассматривают повторяющиеся элементы как один элемент.

Код: Выделить всё

>>> from multiset import FrozenMultiset as fms
>>> fms({3, 3})
{3}
>>> fms({3, 3}) == fms({3})
True
Я что-то упустил?
Или предложите альтернативы, которые соответствуют моей цели.

Подробнее здесь: https://stackoverflow.com/questions/735 ... d-elements
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»