Guest User

Untitled

a guest
Oct 19th, 2018
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.61 KB | None | 0 0
  1. operator_one = { 2: 'break',
  2. 1: 'pass',
  3. 3: 'print',
  4. 4: 'yield',
  5. 5 :'try' ,
  6. }
  7.  
  8.  
  9. operator_two = { 1: 'pass',
  10. 2:'global',
  11. 3: 'yield',
  12. 4: 'print',
  13. 5: 'try',
  14. }
  15.  
  16. def operator_important(farg, *args):
  17. """Перебор ключ-значения в двух словарях при помощи args и записи в новый словарь."""
  18. operator_main = dict() # создание словаря и запись в перем
  19. print("vocabulary_one:", farg) # вывод первого аргумента
  20. for key, value in args: # перебор ключ-значение в обоих словарях
  21. print("vocabulary_two:", arg) # вывод второго аргумента
  22. if key in args and value == args[key]: # если ключ-значение равно аргументу ключ-значение, то создаем новый словарь с ключом и значение
  23. operator_main[key] = value # добавляем в нов. словарь найденное ключ-значение, которое совпало
  24.  
  25. operator_one = {2: 'break',
  26. 1: 'pass',
  27. 3: 'print',
  28. 4: 'yield',
  29. 5: 'try',
  30. }
  31.  
  32. operator_two = {1: 'pass',
  33. 2: 'global',
  34. 3: 'yield',
  35. 4: 'print',
  36. 5: 'try',
  37. }
  38.  
  39. operator_three = {1: 'pass',
  40. 2: 'global',
  41. 3: 'yield',
  42. 4: 'print',
  43. 5: 'try',
  44. }
  45.  
  46.  
  47. def operator_important(*args: dict):
  48. operator_main = dict() # Создаем пустой словарь
  49. for key, value in args[0].items(): # Для ключа и значения из первого словаря...
  50. check = True # Устанавливаем флаг проверки в значение "Истина"
  51. for i in range(1, len(args)): # Проверяем все словари на совпадение
  52. if key not in args[i] or value != args[i][key]: # Если ключ отсутствует в другом словаре
  53. # или его значение отлично от проверяемого
  54. check = False # Устанавливаем флаг в значение "Ложь"
  55. break # И прерываем проверку ключа
  56. if check: # Если флаг сохранил значение "Истина" (То есть ключь присутствует во всех проверяемых словарях
  57. # и значения ключа во всех словарях равны
  58. operator_main[key] = args[0][key] # Добавляем ключь и значение в новый словарь
  59. return operator_main
  60.  
  61.  
  62. print(operator_important(operator_one, operator_two, operator_three))
  63.  
  64. operator_one = { 2: 'break',
  65. 1: 'pass',
  66. 3: 'print',
  67. 4: 'yield',
  68. 5 :'try' ,
  69. }
  70. operator_two = { 1: 'pass',
  71. 2:'global',
  72. 3: 'yield',
  73. 4: 'print',
  74. 5: 'try',
  75. }
  76. def my_dict(d1, d2):
  77. d3 = dict()
  78. for k in d1:
  79. if k in d2 and d1[k] == d2[k]:
  80. d3[k] = d1[k]
  81. return d3
  82.  
  83. print (my_dict(*(operator_one, operator_two)))
  84. print (my_dict(operator_one, *(operator_two, )))
  85. print (my_dict(operator_one, operator_two, *()))
  86.  
  87. # {1: 'pass', 5: 'try'}
  88.  
  89. operator_three = { 1: 'qwerty',
  90. 2:'global',
  91. 3: 'yield',
  92. 4: 'print',
  93. 5: 'try',
  94. }
  95. def my_dict(*d_tuple):
  96. w = [x.items() for x in d_tuple]
  97. first = w[0]
  98. other = w[1:]
  99. res = []
  100. for f in first:
  101. s = 1
  102. for elem in other:
  103. if f not in elem:
  104. s = 0
  105. break
  106. if s:
  107. res.append(f)
  108. return dict(res)
  109.  
  110. print (my_dict(*(operator_one, operator_two, operator_three)))
  111. # {5: 'try'}
  112.  
  113. for key, value in args: # перебор ключ-значение в обоих словарях
  114.  
  115. for key, value in args[0].items(): # перебор ключ-значение в обоих словарях
  116. print("vocabulary_two:", args[0]) # вывод второго аргумента
  117. if key in args and value == args[0][key]: # если ключ-значение равно аргументу ключ-значение, то создаем новый словарь с ключом и значение
  118.  
  119. def operator_important(*args):
  120. """Перебор ключ-значения в двух словарях при помощи args и записи в новый словарь."""
  121. operator_main = dict() # создание словаря и запись в перем
  122. print("vocabulary_one:", args[0]) # вывод первого аргумента
  123. for key, value in args[0].items(): # перебор ключ-значение в обоих словарях
  124. print("vocabulary_two:", args[1]) # вывод второго аргумента
  125. if key in args and value == args[key]: # если ключ-значение равно аргументу ключ-значение, то создаем новый словарь с ключом и значение
  126. operator_main[key] = value # добавляем в нов. словарь найденное ключ-значение, которое совпало
Add Comment
Please, Sign In to add comment