Найти - Пользователи
Полная версия: система расчёта статистик успеваемости студентов
Начало » Python для новичков » система расчёта статистик успеваемости студентов
1
ant976
Здравствуйте!

Решаю задачку “статистика успеваемости студентов”
В рекомендациях указано “Для хранения оценок может оказаться полезным использование списка словарей: каждый словарь хранит оценки только одного студента, а ключи в словаре — это названия предметов.”
Получаю список словарей:

Список вида
'предмет': ‘user’: оценка , ….
Вопрос: как его проитерировать чтобы получить студента с лучшей успеваемостью и средний балл по предметам ?

Если есть возможность, помогите, пожалуйста.
Спасибо.
xam1816
ant976
Вопрос: как его проитерировать чтобы получить студента с лучшей успеваемостью и средний балл по предметам ?

Перебор пары ключ:значение, это базовый прием. Можно использовать например метод
  
some_dict.items()

например

  
grade = {
    'math': {
        'Ivanov': [5, 4, 3, 5, 4, 4],
        'Petrov': [5, 4],
        'Sidorov': [2, 3, 3, 4, 3]
    },
    'geometry': {
        'Ivanov': [4, 4, 5, 4, 2, 4],
        'Petrov': [5, 4, 5, 3],
        'Sidorov': [3, 4, 5, 3, 3]
    }
}
for subject, users in grade.items():
    print(subject, '=', users)
    print('==============')
    for user, estimates in users.items():
        print(user, '=', estimates)
    print('================')

 
math = {'Ivanov': [5, 4, 3, 5, 4, 4], 'Petrov': [5, 4], 'Sidorov': [2, 3, 3, 4, 3]}
==============
Ivanov = [5, 4, 3, 5, 4, 4]
Petrov = [5, 4]
Sidorov = [2, 3, 3, 4, 3]
================
geometry = {'Ivanov': [4, 4, 5, 4, 2, 4], 'Petrov': [5, 4, 5, 3], 'Sidorov': [3, 4, 5, 3, 3]}
==============
Ivanov = [4, 4, 5, 4, 2, 4]
Petrov = [5, 4, 5, 3]
Sidorov = [3, 4, 5, 3, 3]
================
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB