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

нужна помощь, язык python

есть переменная

workers = {

'Петров': {

'должность': 'младший Разработчик',

'эффективность': 50,

'проекты': ['спанч-боб', 'сайт знакомств']

},

'Бекалиев': {

'должность': 'разработчик',

'эффективность': 75,

'проекты': ['гравити-фолз', 'калькулятор']

},

'Сидоров': {

'должность': 'Старший разработчик',

'эффективность': 90,

'проекты': [' гайдкий я ','калькулятор уравнений']

}

}

основываясь на этой переменной нужно сделать так чтобы

1- выводились фамилии всех сотрудников

2- должности всех сотрудников

3-Фамилия самого эффективного сотрудника

4-Добавление нового сотрудника, удаление существуещего сотрудника, изменение эффективности сотрудника по фамилии

работать это должно по принципу телеграм бота типо нажмите 1 будет это нажмите 2 будет это.

заранее спасибо

Ответы

Автор ответа: mandarnchik85
0

Ответ:

1) for i in workers:

  print(i)

2) for i in workers:

  print(i[0])

3) for i in workers:

  if max < i[1]:

      max = i;

print(max)

Объяснение:


bogdan2959: нет
bogdan2959: вообще не так
Автор ответа: ppgem374
0

workers = {

   

   'Петров': {

       'должность': 'младший Разработчик',

       'эффективность': 50,

       'проекты': ['спанч-боб', 'сайт знакомств']

   },

   'Бекалиев': {

       'должность': 'разработчик',

       'эффективность': 75,

       'проекты': ['гравити-фолз', 'калькулятор']

   },

   'Сидоров': {

       'должность': 'Старший разработчик',

       'эффективность': 90,

       'проекты': [' гайдкий я ','калькулятор уравнений']

   }

}

def Menu():

   print('Нажмите 1 чтобы вывести фамилии всех сотрудников')

   print('Нажмите 2 чтобы вывести должности всех сотрудников')

   print('Нажмите 3 чтобы вывести фамилию самого эффективного сотрудника')

   print('Нажмите 4 чтобы добавить нового сотрудника')

   print('Нажмите 5 чтобы удалить сотрудника')

   print('Нажмите 6 чтобы изменить эффективность сотрудника')

   print('Нажмите 7 чтобы выйти из программы')

   while True:

       try:

           choice = int(input('Введите номер пункта: '))

       except ValueError:

           print('Неверный ввод, попробуйте еще раз')

       else:

           if choice in range(1, 8):

               return choice

           else:

               print('Неверный ввод, попробуйте еще раз')

def print_surnames():

   for surname in workers:

       print(surname)

def print_positions():

   for surname in workers:

       print(workers[surname]['должность'])

def print_most_efficient():

   max_efficiency = 0

   for surname in workers:

       if workers[surname]['эффективность'] > max_efficiency:

           max_efficiency = workers[surname]['эффективность']

           most_efficient = surname

   print(most_efficient)

def add_worker():

   surname = input('Введите фамилию сотрудника: ')

   position = input('Введите должность сотрудника: ')

   efficiency = int(input('Введите эффективность сотрудника: '))

   projects = input('Введите проекты сотрудника: ').split()

   workers[surname] = {

       'должность': position,

       'эффективность': efficiency,

       'проекты': projects

   }

def delete_worker():

   surname = input('Введите фамилию сотрудника: ')

   if surname in workers:

       del workers[surname]

   else:

       print('Такого сотрудника нет')

def change_efficiency():

   surname = input('Введите фамилию сотрудника: ')

   if surname in workers:

       efficiency = int(input('Введите новую эффективность сотрудника: '))

       workers[surname]['эффективность'] = efficiency

   else:

       print('Такого сотрудника нет')

while True:

   choice = Menu()

   if choice == 1:

       print_surnames()

   elif choice == 2:

       print_positions()

   elif choice == 3:

       print_most_efficient()

   elif choice == 4:

       add_worker()

   elif choice == 5:

       delete_worker()

   elif choice == 6:

       change_efficiency()

   elif choice == 7:

       break

Похожие вопросы