Python: Посмотрите, содержит ли один набор другого полностью?

Существует ли быстрый способ проверить, содержит ли один набор полностью другого?

Что-то как:

>>>[1, 2, 3].containsAll([2, 1])
True

>>>[1, 2, 3].containsAll([3, 5, 9])
False
71
задан SilentGhost 4 May 2010 в 14:05
поделиться

2 ответа

Это списки, но если вы действительно имеете в виду множества, вы можете использовать метод issubset.

>>> s = set([1,2,3])
>>> t = set([1,2])
>>> t.issubset(s)
True
>>> s.issuperset(t)
True

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

113
ответ дан 24 November 2019 в 12:58
поделиться

Для полноты: это эквивалент issubset (хотя, возможно, немного менее явный / читаемый):

>>> set([1,2,3]) >= set([2,1])
True
>>> set([1,2,3]) >= set([3,5,9])
False
32
ответ дан 24 November 2019 в 12:58
поделиться
Другие вопросы по тегам:

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