Предмет: Информатика, автор: Reqiuem10

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]

for i in (a + b):
if если данное число и в а и в б in i:
print(i)
ребят как найти те числа которые есть в этих двух множествах
я понимаю что можно писать по разном через их пересечения или филтр
но как это писать через for и if какой когда надо писать чтобы найти такие числа которые есть в обеих множествах


Reqiuem10: немного непонятно написал но надеюсь поймёте)
Mikail2006: Вам нужно составить список элементов которые есть в обоих множествах при этом использовать только for и if-else, верно?
Mikail2006: {1, 2, 3, 5, 8, 13}
Reqiuem10: Здарова можешь ответить на вопрос?

Ответы

Автор ответа: Mikail2006
3

set_a = (1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89)

set_b = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)

set_ab = set()

for i in set_a:

   if i in set_b:

       set_ab.add(i)

print(set_ab)

Приложения:

Reqiuem10: спс
Mikail2006: :)
Reqiuem10: Что хотел сказать, у тебя есть телега? Как понимаю ты больше шаришь в этом чем я там в ходе изучения бывают вопросы а здесь скинуть и ждать 2-5 дней как-то не охота
Mikail2006: Нет у меня вообще соц сетей нет, но есть форум там где я есть, на несложные вопросы по питону почти мгновенно отвечают, называется киберфорум)
Reqiuem10: Гляну,спч
Reqiuem10: спс*
Автор ответа: Arnur2937
0

Ответ:

⬇️⬇️⬇️

Объяснение:

Можно найти числа с помощью множеств(тип данных set)

Для начала давайте обе списка превратим в множества.

a =  set([1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89])

b = set([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13])

c = a & b    #в множестве c хранится пересечение множеств а и b то есть то что нам и надо(вместо символа '&' можно использовать метод intersection() и переписать код следующим образом: c = a.intersection(b))

print(c)

Но если вы хотите решить задачу циклом for то могу предположить только это:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]

for num in a:

   if num in b:

        print(num)

Выведенные числа могут повторятся и это можно исправить с использованием множества для хранения результатов, ну а если не хотите их использовать то можно создать список который будет хранить как вы уже поняли числа которые есть в обеих при этом мы должны добавить еще один if который будет проверять есть ли новое число в списке. А так же надо будет выводить этот список после поиска чисел. Выглядеть будет это как то так:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]

res = []

for num in a:

   if num in b:

        if not num in res:

            res.append(num)

print(*res)


Reqiuem10: спс
Похожие вопросы
Предмет: Биология, автор: lizakrant48