Счётчик побед и поражений не работает

Имеется вот такой код для "Камень Ножницы Бумага":

import random
wins = 0
defeat = 0

while True:
    try:
        print("")
        print("Побед:", wins)
        print("Поражений:", defeat)
        print("Сбросить Счётчик - 4, Выйти - 5")
        player_choice = int(input("1 - Камень, 2 - Ножницы, 3 - Бумага: "))
        if player_choice > 5 or player_choice < 1:
            print("Дурачок?")
            continue
        if player_choice == 4:
            wins = 0
            defeat = 0
            continue
        if player_choice == 5:
            quit()
        ai_choice = random.randint(1, 3)
        print("Ваш выбор:", player_choice)
        print("Выбор Компьютера:", ai_choice)  
        if player_choice == ai_choice:
            print("Ничья!")
        elif player_choice == 1 and ai_choice == 2:
            print("Вы победили!")
            wins + 1
        elif player_choice == 3 and ai_choice == 1:
            print("Вы победили!")
            wins + 1
        elif player_choice == 2 and ai_choice == 3:
            print("Вы победили!")
            wins + 1
        else:
            print("Вы проиграли!")
            defeat + 1
    except ValueError:
        print("Ввод не корректен")

По задумке, при победе или проигрыше цикл должен начинаться заново и добавлять +1 к счётчику побед и поражений который выводится каждый раз в начале цикла. Всё работает, но счётчик всегда пишет 0, хотя по сути должен прибавляться. Что я сделал не так?


Ответы (1 шт):

Автор решения: CrazyElf
wins + 1

Эта строка ничего не делает по сути. Да, она складывает переменную wins и число 1, но никуда результат не помещает. Нужно присваивать результат обратно в wins:

wins = wins + 1

Или, тоже самое, но короче:

wins += 1

С переменной defeat - тоже самое.

→ Ссылка