Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1193 / 762 / 128
Регистрация: 10.03.2012
Сообщений: 4,938

Операции над словарем

23.12.2022, 13:52. Показов 655. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Данные о сотрудниках в программе хранятся в словаре
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
staff = [
    {
        'name': 'Алексей',
        'surname': 'Петров',
        'salary': 124300
    },
    {
        'name': 'Николай',
        'surname': 'Петров',
        'salary': 120000
    },
    {
        'name': 'Иван',
        'surname': 'Павлов',
        'salary': 34500
    },
    {
        'name': 'Василий',
        'surname': 'Кукушкин',
        'salary': 162500
    },
    {
        'name': 'Василий',
        'surname': 'Павлов',
        'salary': 47800
    },
]
Вычислить
Python
1
2
3
4
5
print("Имя и Фамилию сотрудника с самой высокой зарплатой:")
print("Имя и Фамилию сотрудника с самой низкой зарплатой:")
print("Среднеарифметическую зарплату всех сотрудников")
print("Количество однофамильцев в организации")
print("Список всех сотрудников(Имя и Фамилию) в порядке возрастания их зарплаты")
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
max_emp = staff[0]
for emp in staff:
    if emp["salary"] > max_emp["salary"]:
        max_emp =emp
print("Имя и Фамилию сотрудника с самой высокой зарплатой:")
print(f"{max_emp['name']} {max_emp['surname']}")
 
min_emp = staff[0]
for emp in staff:
    if emp["salary"] < min_emp["salary"]:
        min_emp = emp
print("Имя и Фамилию сотрудника с самой низкой зарплатой:")
print(f"{min_emp['name']} {min_emp['surname']}")
 
count = 0
sum = 0
for emp in staff:
    sum = sum + emp['salary']
    count += 1
print("Среднеарифметическую зарплату всех сотрудников")
print(int(sum / count))
Как сделать последнее задание?
Python
1
print("Список всех сотрудников(Имя и Фамилию) в порядке возрастания их зарплаты")
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.12.2022, 13:52
Ответы с готовыми решениями:

Операции над списками
Доброе время суток господа сочувствующие. Дано несколько файлов в формате .csv с содержанием типа XYZ: X Y Z ...

Операции над списком
Дан список, заполненный произвольными целыми числами. Найти: 1. Количество элементов списка не превышающие 10 2. Сумму всех...

Задача операции над множествами
Леонид печет торты и ведет профессиональный аккаунт в Instagram. Он хочет собрать статистику, сколько уникальных пользователей оставили...

3
2431 / 1474 / 633
Регистрация: 01.11.2021
Сообщений: 2,269
23.12.2022, 14:56
Python
1
print('\n'.join(f'{emp["name"]} {emp["surname"]}' for emp in sorted(staff, key=lambda x: (x['salary']))))
Добавлено через 2 минуты
Вдруг у кого-то зарплата не указана. Их в конец.
Python
1
print('\n'.join(f'{emp.get("name")} {emp.get("surname")}' for emp in sorted(staff, key=lambda x: x.get('salary', float("inf")))))
2
1193 / 762 / 128
Регистрация: 10.03.2012
Сообщений: 4,938
23.12.2022, 16:09  [ТС]
Python
1
2
3
4
5
6
7
8
9
namer = 0
for emp1 in staff:
    for emp2 in staff:
        if emp1 != emp2:
            if emp1.get("surname") == emp2.get("surname"):
                namer +=1
                break
print("Количество однофамильцев в организации")
print(namer, "\n")
Так правильно?
Python
1
2
3
4
5
6
7
8
9
for a in range(len(staff)):
    i = 0
    while i < len(staff)-1:
        if staff[i].get("salary") > staff[i+1].get("salary"):
            staff[i], staff[i+1] = staff[i+1], staff[i]
        i += 1
print("Список всех сотрудников(Имя и Фамилию) в порядке возрастания их зарплаты")
for a in staff:
    print(f"{a.get('name')}, {a.get('surname')}, {a.get('salary')}")
0
2431 / 1474 / 633
Регистрация: 01.11.2021
Сообщений: 2,269
23.12.2022, 16:35
Цитата Сообщение от Whitecolor Посмотреть сообщение
Так правильно?
Если работает и результат такой, как надо, то правильно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.12.2022, 16:35
Помогаю со студенческими работами здесь

Операции над массивом numpy
Используя numpy создать массив 10 x 10 со случайными значениями от 1 до 100(int64). Найти среднее значение всех элементов массива. Найти...

Арифметические операции над значениями в списке
Здраствуйте! Пытаюсь реализовать арифметические операции в питоне такого плана: # y - мой список со списками (общая длина 100, длина...

Задача: Comprehensions и операции над множествами
Всем доброго времени суток! Очень прошу помощи в решении задачи: Выполните следующие преобразования (каждое действие решается в...

Реализовать программу для проведения операции над комплексными числами
не использовать внешние библиотеки(numpy и т.д.) Каждую операцию оформить в виде функции, которая на вход принимает список из 4 элементов...

Операции со словарем
Есть список чисел, мы хотим получить максимально встречающееся число,. если их несколько , то получить несколько, хотелось бы решить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru