Лайки и дизлайки на YouTube

На YouTube есть функционал лайков и дизлайков. Выбирая между двумя кнопками, вы можете выразить свое мнение о контенте. При этом настройки не позволяют одновременно и лайкнуть, и дизлайкнуть видео.

Есть и другие правила для этой функции:

  1. Если нажать какую-либо из кнопок повторно, это отменит первое нажатие (т.е. лайк или дизлайк просто снимется).
  2. Если вы нажали кнопку лайка после того как уже нажали дизлайк, значение перезаписывается (вместо дизлайка будет стоять лайк). И наоборот.

Напишите функцию, которая будет принимать список нажатий кнопок и возвращать итоговое состояние.

Примеры

     like_or_dislike(["Dislike"]) ➞ "Dislike"
     like_or_dislike(["Like", "Like"]) ➞ "Nothing"
     like_or_dislike(["Dislike", "Like"]) ➞ "Like"
     like_or_dislike(["Like", "Dislike", "Dislike"]) ➞ "Nothing"

Примечания

Если никакая из кнопок не активна, возвращаем «Nothing». Если список пуст, тоже возвращаем «Nothing».

Варианты решений

def like_or_dislike(lst):
    state = 'Nothing'
​
    for vote in lst:
        if state == vote:
            state = 'Nothing'
        else:
            state = vote
  
    return state
def like_or_dislike(lst):
    state = 'Nothing'
    for i in lst:
        state = 'Nothing' if i == state else i
    return state
python books logo

Английский для программистов

Наш телеграм канал с тестами по английскому языку для программистов. Английский это часть карьеры программиста. Поэтому полезно заняться им уже сейчас

×