(Задача по Питону) По заданным сведениям об учениках класса определить средний вес мальчиков и средний рост девушек. Вывести фамилию самого высокого ученика в классе.
И напишите с объяснением
Ответы на вопрос:
--- Python 3.7 ---
import statistics
def ReadData(Count): #Читаем с консоли информацию об ученике
print('Enter Student parameters: gender (G/B (Upper case!)), surname, height and weight. Use "space" to split data\nStrictly follow input order!\n')
for _ in range(Count):
rawData = input().split(' ')
yield {'gender': rawData[0],'surname':rawData[1], 'height':int(rawData[2]), 'weight':int(rawData[3])}
def IsolateParameter(Container, Attribute): #Возвращает итерируемый объект. Перебирает словарь, возвращает значение в словаре по заданному ключу
for LocCont in Container:
yield LocCont[Attribute]
def StatAverage(Cont, Attribute, StatFunc): #Подсчитывает статистику (функция, использующаяся для подсчёта статистики, задаётся при вызове функции под именем StatFunc) для всех значений словаря по заданному ключу
return StatFunc(list(IsolateParameter(Cont, Attribute)))
def GetTopHeight(Cont): #Возвращает максимальное значение среди всех элементов словаря под ключом 'height'
return max(list(IsolateParameter(Cont, 'height')))
def main(): #Основное тело программы.
RawData = ReadData(int(input('Count of Students:\n')))
ListedData = list(RawData) #Работать с генератором далее не удобно
AllBoys = filter(lambda g: g['gender'] == 'B', ListedData)
AllGirls = filter(lambda g: g['gender'] == 'G', ListedData)
AvBoyWeight = StatAverage(AllBoys, 'weight', statistics.mean)
AvGirlsHeight = StatAverage(AllGirls, 'height', statistics.mean)
TopHeightSurname = GetTopHeight(ListedData)
print('''
Average Boys weight: {0};
Average Girls height: {1};
Surname of tallest student: {2}
'''.format(AvBoyWeight, AvGirlsHeight, TopHeightSurname))
if __name__ == '__main__':
main()
Объяснение:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
IG7706.08.2021 05:21
-
slunyavchik11.09.2021 01:35
-
Olga83110607.10.2021 23:23
-
Екатерина31Теребун05.11.2020 20:01
-
keti23018701.04.2021 10:36
-
kulanforever06.10.2021 00:07
-
айгерим10629.03.2021 07:19
-
timurev29.10.2022 09:37
-
смерть7316.09.2021 07:04
-
Анастасия12678306.12.2020 01:51
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.