Advertisement
ForestFox

Пеляш

Dec 7th, 2021
924
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.59 KB | None | 0 0
  1. def search_group(a):
  2.     for i in group.keys():
  3.         if a[0] == i:
  4.             k = []
  5.             for j in group[i]:
  6.                 k.append(f'{j}a')
  7.                 k.append(f'{j}t')
  8.             return k
  9.  
  10. def search_parametrs(a):
  11.     parametrs = []
  12.     for i in a:
  13.         if characteristics[i]:
  14.             parametrs += [characteristics[i]]
  15.     return parametrs
  16.  
  17.  
  18. def main_search(parametrs, t):
  19.     correct_types = []
  20.     for i in t:
  21.         for j in parametrs:
  22.             if not j in i:
  23.                 break
  24.         else:
  25.             correct_types += [i]
  26.     return correct_types
  27.  
  28.  
  29. analists = ['INTP', 'ENTP', 'INTJ', 'ENTJ']
  30. diplom = ['INFP', 'INFJ', 'INFP', 'ENFJ']
  31. savers = ['ISTJ', 'ISFJ', 'ESTJ', 'ESFJ']
  32. finders = ['ISTP', 'ISFP', 'ESTP', 'ESFP']
  33.  
  34. types = []
  35. for i in (analists, diplom, savers, finders):
  36.     for j in i:
  37.         types.append(f'{j}a')
  38.         types.append(f'{j}t')
  39.  
  40. characteristics = {'экстраверты': 'E', 'интроверты': 'I', 'интуиты': 'N', 'сенсорики': 'S', 'логики': 'T', 'этики': 'F',
  41.                    'рационалы': 'J', 'иррационалы': 'P', 'прямолинейные': 'a', 'креативные': 't'}
  42.  
  43. group = {'аналитики': analists, 'дипломаты': diplom, 'хранители': savers, 'искатели': finders}
  44. print('Введите характеристик(у/и)')
  45. a = list(map(str, input().split()))
  46.  
  47. group = search_group(a)
  48. if group:
  49.     print(main_search(search_parametrs(a[1:]), group))
  50. else:
  51.     print(main_search(search_parametrs(a), types))
  52.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement