sswwssww
@sswwssww

Почему функция min некорректно сравнивает множества?

x, y = {0}, {1}
print(min(x, y) == min(y, x))


- выведет "false", что происходит?
  • Вопрос задан
  • 217 просмотров
Решения вопроса 1
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Из документации:
Two sets are equal if and only if every element of each set is contained in the other (each is a subset of the other). A set is less than another set if and only if the first set is a proper subset of the second set (is a subset, but is not equal). A set is greater than another set if and only if the first set is a proper superset of the second set (is a superset, but is not equal).

В вашем случае ни {0} не является подмножеством {1}, ни {1} не является подмножеством {0}. Поэтому min просто выводит первый элемент.

If multiple items are minimal, the function returns the first one encountered.

А поскольку эти множества не равны между собой - вам выводится False
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы