N количество входов set () в python - PullRequest
0 голосов
/ 10 апреля 2020

A - это заданный пользователем набор, и все, что я должен проверить, это то, что все заданные наборы являются супер-набором A, или нет. Я просто не знаю, как получить множественный ввод в l oop для набора. Мой код должен работать вот так

enter elements of set A : 3 4 5 6 7 2
input total numbers of other sets you want to input: 3

помогите мне получить несколько наборов входов вот так

input set: 1 2 3 4 5
input set: 3 4 5 4
input set: 3 2 4 1 2 4 5

, если A является супер множеством всех из них print

True

иначе print

False

мой код такой, но он не работает идеально

A = set(map(int, input().split()))
for i in range(0,int(input())):
    N = set(map(int, input().split()))
    if A.union(N) == A:
        print(True)
    else:
        print(False)

Ответы [ 3 ]

0 голосов
/ 10 апреля 2020

Создайте пустой набор B, затем объедините в для l oop входные наборы с этим пустым набором.

Затем проверьте, является ли B надмножеством A после л oop

A = set(map(int, input("Enter elements of set A: ").split()))
B = set()
for i in range(0,int(input("Input total numbers of other sets you want to input: "))):
    N = set(map(int, input("Input set: ").split()))
    B = B | N  # or B.union(N)

print(B.issuperset(A))
0 голосов
/ 11 апреля 2020

Спасибо всем, я много раз пробовал и получил этот способ для идеального запуска кода, пожалуйста, просмотрите этот код, если какие-либо изменения необходимы

A = set(map(int, input().split()))
B = set()
for i in range(0,int(input())):
     B =  B.union(set(map(int, input().split())))

if B == A:
     print(True)
else:
     print(False)
0 голосов
/ 10 апреля 2020

Чтобы проверить, является ли набор "A" надмножеством другого набора "B", класс 'set' уже имеет метод для этого:

A.issuperset(B)

Следующий код проверяет, является ли A надмножеством из B

...