Как определить «самый большой» набор в питоне? - PullRequest
0 голосов
/ 17 октября 2018

Рассмотрим следующий код:

b = set([111,222,333,444])
a = set([10,20,30])
print max(a,b,key=len) # set([444, 333, 222, 111])
print max(a,b) # set([10, 20, 30])

Мне любопытно, если нет параметра 'key', функция max () выдаст сбивающий с толку результат, он не содержит больше элементов, нитот, чей первый элемент больше (10 <111), ни первый аргумент (если он не знает, как сравнивать входные аргументы, возможно, он вернет первый аргумент, который является b?) </p>

ByПри объяснении функции max() она должна возвращать «самый большой аргумент», если на входе два или более аргумента.Так как определить «самый большой» из нескольких наборов?

1 Ответ

0 голосов
/ 17 октября 2018

Устанавливает переопределение <, <=, > и >= для выполнения подмножества и надмножества и не должно рассматриваться как заказываемое.

Из-за этого нет набора 'max' или 'min' .

Из документации типа набора :

issubset(other)
set <= other

Проверьте, является ли каждый элемент в наборе другим.

set < other

Проверьте, является ли набор подходящим подмножеством другого, то есть set <= other and set != other.

issuperset(other)
set >= other

Проверьте, есть ли в наборе каждый элемент другого элемента.

set > other

Проверьте,набор является правильным надмножеством другого, то есть set >= other and set != other.

и далее вниз

Набор меньше другого набора тогда и только тогда, когда первый наборявляется правильным подмножеством второго набора (является подмножеством, но не равно).Набор больше, чем другой набор, если и только если первый набор является правильным расширенным набором второго набора (является расширенным набором, но не равен).

и, наконец,

Поскольку наборы определяют только частичное упорядочение (отношения подмножеств), выходные данные метода list.sort() для списков наборов не определены.

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

...