Форум сайта python.su
Не знаю где ошибка, ибо он выдает 2 одинаковые строки в конце с разными результатами .
Исходный код:
rostik = (“Ростик”,“Федоров”,20)
vlad = (“Влад”,“Федоров”,23)
egor = (“Егор”,“Харченко”,20)
nikita = (“Никита”,“Харченко”,19)
people = (rostik, vlad, egor, nikita)
summ = 0
for age in people:
if age == None:
continue
summ = summ + age
print(summ/len(people))
for o, o1 in enumerate(people):
if o/o1 < 20.5:
print(o,o1, “ynge”)
else:
print(o,o1, “old”)
Результат:
20.5
0 ('Ростик', ‘Федоров’, 20) ynge
1 ('Влад', ‘Федоров’, 23) ynge
2 ('Егор', ‘Харченко’, 20) ynge
3 ('Никита', ‘Харченко’, 19) ynge
3 ('Никита', ‘Харченко’, 19) old
Прикреплённый файлы:
help.py (457 байт)
Офлайн
Задание обрезанное не совсем понятно что нужно получить. Соединил с твоим файлом, получилось до чего смог догадаться.
В задании - список кортежей, у тебя исходные данные не те что просят.
Добавил в список человека с неизвестным возрастом, чтобы протестить код
# по условию список кортежей people = [('Ростик','Федоров',20), ('Влад','Федоров',23), ('Иван','Иванов',None), ('Егор','Харченко',20), ('Никита','Харченко',19)] total = 0 #общий возраст всех людей из списка quantity =0 #количество человек чей возраст известен for item in people: if item[2] == None: continue total += item[2] quantity +=1 average_age = total / quantity print(average_age) for item in people: if item[2] == None: #чей возраст неизвестен не выводим в результат continue if item[2] > average_age: print(item[0], 'old') else: print(item[0], 'young')
Отредактировано sa (Март 20, 2024 22:29:29)
Офлайн
saСпасибо большое, задание выложено по сути полностью, за исключением концовки, ибо видимо в теме не хватило места на символы, но задание понято верно, в вашем ответе разобрался, понял что сделал не так, благодарю за помощь.
Задание обрезанное не совсем понятно что нужно получить. Соединил с твоим файлом, получилось до чего смог догадаться.В задании - список кортежей, у тебя исходные данные не те что просят.Добавил в список человека с неизвестным возрастом, чтобы протестить код
Офлайн