boris-vlasenko

множества, пересечение списков

Sep 24th, 2019
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.04 KB | None | 0 0
  1. from random import randrange as rnd
  2. n = rnd(15,25)
  3. a = [rnd(10) for x in range(n)]
  4. n = rnd(5,35)
  5. b = [rnd(10) for x in range(n)]
  6. print(a)
  7. print(b)
  8.  
  9. ############ 1
  10. set_a = set(a)
  11. set_b = set(b)
  12. res = set_a & set_b
  13. res = list(res)
  14. print(res)
  15. # Это можно одной строкой
  16. print(set(a) & set(b))
  17.  
  18. print(list(set(a) & set(b)))
  19.  
  20. #На множествах допустимы операции
  21. #пересечения   a & b           элементы, входящие в оба множества
  22. #вычитания     a - b, b - a    элементы, входящие в первое, но не входящие во второе
  23. #объединения   a + b           элементы, входящие хотя бы в одно множество
  24.  
  25.  
  26. ############ 2
  27. res = []
  28. for xa in a:
  29.     f = False
  30.     for xb in b:
  31.         if xb == xa:
  32.             f = True
  33.             break
  34.     if f and xa not in res:
  35.         res.append(xa)
  36. print(res)
  37.    
  38.  
  39. ############ 3
  40. res = []
  41. for x in a:
  42.     if x not in res and x in b:
  43.         res.append(x)
  44. print(res)
Add Comment
Please, Sign In to add comment