В чем проблема кода? Дилетант в этом деле :)

Я новичок. Буду признателен, если вы мне поможете.

Код:

# Игра "Отгадай число"

# Описываю правила игры
print("\tДобро пожаловать на игру 'Отгадай число'\n")
print("Правила просты: " + "\nВведите число от 1 до 100, но если неугадаете - выполните любое простое действие.\n")

# импортирую библиотеку генерации случайных чисел
import random

# задаю переменную под random
one_hundred = random.randint(1, 100)

# создаю цикл
guess = int(input("Введите значение: "))
guess1 = int(input("Введите значение: "))

if guess != one_hundred:
    print("Не угадали :) " + "\nЗагаданное число: ", one_hundred)
    continue1 = str(input("Продолжаем? " + "\n(чтобы автоматизировать следующие игры, напишите 'авто', а также, чтбы отключить напишите 'отмена авто')")
                          if continue1 == "да":
                              print(guess)
                          elif continue1 == "нет":
                              input("\n\nНажмите Enter, чтобы выйти. ")
                          elif continue1 == "авто":
                              while guess1 != "отмена авто":
                                    print(guess1)

if guess1 != one_hundred:
    print("Не угадали :) " + "\nЗагаданное число: ", one_hundred)
    print(guess1)

elif guess1 == one_hundred:
    victory = str(input("Вы угадали, поздравляю :) "))
    print(guess1)

elif guess != "отмена авто":
    print(guess)


else:
    win = str(input("Поздравляю, вы выйграли! :) " + "\nСыграем ещё? "))
    while win != "да" or "нет":
        print ("Введите ответ (да или нет) ")
    if win == "да":
        print(guess)
    elif win == "нет":
        input("\n\nНажмите Enter, чтобы выйти. ")

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

Автор решения: Kers

Для начала у Вас 2 ошибки.
1 - В continue1 намудрили со скобками + ненужное приведение к строке (input и так строка) 2 - Ошибка в табуляции. Следующий блок if как бы вложенный в continue1 что тоже ошибка.
Приложил исправленный кусок кода

if guess != one_hundred:
    print("Не угадали :) " + "\nЗагаданное число: ", one_hundred)
    continue1 = input("Продолжаем? " + "\n(чтобы автоматизировать следующие игры, напишите 'авто', а также, чтбы отключить напишите 'отмена авто')")
    if continue1 == "да":
        print(guess)
    elif continue1 == "нет":
        input("\n\nНажмите Enter, чтобы выйти. ")
        break # для цикла который нужно создать
    elif continue1 == "авто":
        while guess1 != "отмена авто":
            print(guess1)

P.S. это не все ошибки. Как минимум на следующую итерацию не ощищаются значение введенных попыток. Там где комментарий # создаю цикл и правда нужно создать цикл. авто так работать не будет.

→ Ссылка
Автор решения: hlghl

Я поправил твой код.

# Игра "Отгадай число"
# импортирую библиотеку генерации случайных чисел
import random

# Описываю правила игры
print("\tДобро пожаловать на игру 'Отгадай число'\n")
print("Правила просты: " + "\nВведите число от 1 до 100, но если неугадаете - выполните любое простое действие.\n")

flag = True

# создаю цикл
while flag:

    guess1 = int(input("Введите значение: "))
    one_hundred = random.randint(1, 100)

    if guess1 != one_hundred:
        print("Не угадали :) " + "\nЗагаданное число: ", one_hundred)
        continue1 = str(input(
            "Продолжаем? " + "(чтобы автоматизировать следующие игры, напишите 'авто', а также, чтбы отключить "
                             "напишите 'отмена авто') "))

        if continue1 == "да":
            print(guess1)
        elif continue1 == "нет":
            flag = False
        elif continue1 == "авто":
            while guess1 != "отмена авто":
                guess1 = input("Введите значение: ")
                one_hundred = random.randint(1, 100)

                if guess1.isdigit():
                    guess1 = int(guess1)
                    if guess1 != one_hundred:
                        print("Не угадали :) " + "\nЗагаданное число: ", one_hundred)

                    elif guess1 == one_hundred:
                        print("Вы угадали, поздравляю :)")

    else:
        win = str(input("Поздравляю, вы выйграли! :) " + "\nСыграем ещё? "))
        if win == "да":
            print(guess1)
        elif win == "нет":
            flag = False

Твои ошибки:

  1. Ты не создал цикл, но написал комментарий :)

  2. Если бы ты и создал цикл, то у тебя бы каждый раз было одно и тоже число, потому что ты не обновлял бы его.

  3. Ошибка в табуляции.

                      if continue1 == "да":
                          print(guess)
                      elif continue1 == "нет":
                          input("\n\nНажмите Enter, чтобы выйти. ")
                      elif continue1 == "авто":
                          while guess1 != "отмена авто":
                                print(guess1)
    
  4. Зачем ты принимаешь 2 числа, если название твоей игры - отгадай числО, а не числА :)

  5. Ошибка в табуляции.

    if guess1 != one_hundred:
        print("Не угадали :) " + "\nЗагаданное число: ", one_hundred)
        print(guess1)
    
    elif guess1 == one_hundred:
        victory = str(input("Вы угадали, поздравляю :) "))
        print(guess1)
    
  6. Во время "авто" ты не обновляешь рандомное число.

  7. Во время "авто", сделал, чтобы принимал на вход строку и потом проверял, можно сделать по другому.

Удачи

→ Ссылка