сложить элементы списка python
Есть список песен группы Depeche Mode со временем звучания с точностью до долей минут
violator_songs_list = [
['World in My Eyes', 4.86],
['Sweetest Perfection', 4.43],
['Personal Jesus', 4.56],
['Halo', 4.9],
['Waiting for the Night', 6.07],
['Enjoy the Silence', 4.20],
['Policy of Truth', 4.76],
['Blue Dress', 4.29],
['Clean', 5.83],
]
# распечатайте общее время звучания трех песен: 'Halo', 'Enjoy the Silence' и 'Clean' в формате
# Три песни звучат ХХХ минут
# Обратите внимание, что делать много вычислений внутри print() - плохой стиль.
# Лучше заранее вычислить необходимое, а затем в print(xxx, yyy, zzz)
TODO здесь ваш код
ума не приложу как это сделать
Ответы (1 шт):
Автор решения: Александр
→ Ссылка
violator_songs_list = [
['World in My Eyes', 4.86],
['Sweetest Perfection', 4.43],
['Personal Jesus', 4.56],
['Halo', 4.9],
['Waiting for the Night', 6.07],
['Enjoy the Silence', 4.20],
['Policy of Truth', 4.76],
['Blue Dress', 4.29],
['Clean', 5.83],
]
def main():
variable = 0
for i in violator_songs_list:
print(i[0])
if i[0] == 'Halo':
variable += i[1]
elif i[0] == 'Enjoy the Silence':
variable += i[1]
elif i[0] == 'Clean':
variable += i[1]
print(f"Три песни звучат {variable} минут")
# Ещё можно так но не уверен что правильно
names = ['Halo', 'Clean','Enjoy the Silence']
total = sum([l for n, l in violator_songs_list if n in names])
print(f"Три песни звучат {total} минут")
if __name__ == '__main__':
main()