Как в переменную записать два значения из списка?

Рейтинг: -4Ответов: 1Опубликовано: 13.08.2023

Мне нужно, чтобы в переменную записывались индексы из списка, а потом можно было по этим индексам проверить правильный ответ.

x = 'кг и г'
y = 'км и м'
z = 'м и с'
w = 'век и год'

list = [str(x), str(y), str(z), str(w)]

correct_answer = str([list[0], list[1]])

    for t, option in enumerate(list):
        print(f"{t + 1}. {option}")

    user_input = int(input("Введите номер правильного варианта: "))

    answer = list[user_input - 1]

    if answer == correct_answer:
        print("Верно!")
    else:
        print("Неверно. Попробуйте еще раз.")

Получается, что когда пользователь вводит ответ, он должен ввести два значения, а программа должна сверить их с correct_answer

Ответы

▲ 1

В вашем случае, когда пользователь вводит номер правильного варианта, он должен ввести только одно значение (индекс). Исходя из этого, вам не нужно записывать два значения в переменную correct_answer.

Вот правильный код:

x = 'кг и г'
y = 'км и м'
z = 'м и с'
w = 'век и год'

options = [x, y, z, w]

correct_indexes = [0, 1] # Индексы правильных вариантов ответа

for t, option in enumerate(options):
    print(f"{t + 1}. {option}")

user_input = int(input("Введите номер правильного варианта: "))

if user_input - 1 in correct_indexes:
    print("Верно!")
else:
    print("Неверно. Попробуйте еще раз.")

В этом коде мы создаем список correct_indexes, где указываем индексы правильных вариантов ответа. Затем, когда пользователь вводит номер правильного варианта, мы проверяем, находится ли этот индекс в списке correct_indexes. Если да, то выводим "Верно!", иначе выводим "Неверно. Попробуйте еще раз. Дядя Nymos всем поможет!