Как сделать варианты ответа в python
Python 3 — это современный язык, на котором просто и приятно писать программы.
Для печати значений в Питоне есть функция print(). Внутри круглых скобок через запятую мы пишем то, что хотим вывести. Вот программа, которая делает несколько вычислений:
print(5 + 10) print(3 * 7, (17 - 2) * 8) print(2 ** 16) # две звёздочки означают возведение в степень print(37 / 3) # один слэш — это деление с ответом-дробью print(37 // 3) # два слэша считают частное от деления нацело # это как операция div в других языках print(37 % 3) # процент считает остаток от деления нацело # это как операция mod в других языках
Для ввода данных в программу мы используем функцию input() . Она считывает одну строку.
Вот программа, которая считывает имя пользователя и приветствует его:
Пётр
print('Как вас зовут?') name = input() # считываем строку и кладём её в переменную name print('Здравствуйте, ' + name + '!')
Мы будем писать программы, которые считывают данные, перерабатывают их и выводят какой-то результат. При запуске на компьютере такие программы считывают данные, которые пользователь вводит с клавиатуры, а результат выводят на экран.
Попробуем написать программу, которая считывает два числа и выводит их сумму. Для этого считаем два числа и сохраним их в переменные a и b , пользуясь оператором присваивания = . Слева от оператора присваивания в программах на Питоне ставится имя переменной — например, строка из латинских букв. Справа от оператора присваивания ставится любое выражение. Имя станет указывать на результат вычисления выражения. Проиграйте эту программу и посмотрите на результаты её работы:
a = input() b = input() s = a + b print(s)
Мы видим, что программа выводит 57 , хотя в реальной жизни 5 + 7 будет 12 . Это произошло потому, что Питон в третьей строчке «сложил» две строки, а не два числа. В Питоне две строки складываются так: к первой строке приписывается вторая.
Обратите внимание, что в визуализаторе содержимое переменных a и b заключено в кавычки. Это означает, что в a и b лежат строки, а не числа.
В Питоне все данные называются объектами. Число 2 представляется объектом «число 2», строка ‘hello’ – это объект «строка ‘hello’ ».
Каждый объект относится к какому-то типу. Строки хранятся в объектах типа str , целые числа хранятся в объектах типа int , дробные числа (вещественные числа) — в объектах типа float . Тип объекта определяет, какие действия можно делать с объектами этого типа. Например, если в переменных first и second лежат объекты типа int , то их можно перемножить, а если в них лежат объекты типа str , то их перемножить нельзя:
first = 5 second = 7 print(first * second) first = '5' second = '7' print(first * second)
Чтобы преобразовать строку из цифр в целое число, воспользуемся функцией int() . Например, int(’23’) вернет число 23 .
Вот пример правильной программы, которая считывает два числа и выводит их сумму:
a = int(input()) b = int(input()) s = a + b print(s)
Хочу создать несколько вариантов ответов
Например, перечислить в коллекции ( tuple , list , set , и т.п.) и через in проверить:
n = 'Не правильно!' if name not in ("16", "17", "18") else 'Отлично!' # OR: n = 'Отлично!' if name in ("16", "17", "18") else 'Не правильно!'
Либо стареньким способом через if :
if name == "16" or name == "17" or name == "18": n = 'Отлично!' else: n = 'Не правильно!' # OR: n = 'Отлично!' if name == "16" or name == "17" or name == "18" else 'Не правильно!'
Как сделать условие для ответа на вопрос в Python?
Здравствуйте уважаемые разработчики, я только начал изучать Python и у меня возникла проблема. Как мне в коде после
input («Тебе больше 18 лет? «)
Если пользователь ответил «Да» «да» «ДА», то выполняется одно условие, а если ответил «Нет» «нет» «НЕТ», то выполняется условие. Я думаю через if и else, но не понимаю как это правильно сделать.
- Вопрос задан более трёх лет назад
- 9417 просмотров
Комментировать
Решения вопроса 1
answer = input ("Тебе больше 18 лет? ") if answer.upper() == 'ДА': print(answer) if answer.upper() == 'НЕТ': print(answer)
Используйте .upper() что бы вот этого не делать
Ответ написан более трёх лет назад
Нравится 1 6 комментариев
13-Pythin-13 @13-Pythin-13 Автор вопроса
а как можно сделать так, если пользователь вводит не заданные мною ответы, а что то другое то ему выходит текст с ошибкой?
13-Pythin-13, можете добавить ниже
if answer.upper() != 'ДА' and answer.upper() != 'НЕТ': print(answer+ " Ответ не верный")

Кирил Мирошниченко @Pr0gram1st
У меня такая ситуация,я зделал прогу(рандомайзер)и там ето условие вопрос(Ти мальчики?)если да то все работает,а если нет то оно пишет то и самое что в да,помогите(
Я Точно я, без кода тут не помочь.

Кирил Мирошниченко @Pr0gram1st

datka, ,вище только import time,import random і фрази для рандомайзера(проценти крутости)

Кирил Мирошниченко @Pr0gram1st
Я Точно я, с мальчики работает,а с девочкой не пишет «сканування крутости 1%»и вместо ти крутая на(количество процентов)пишет ти крутой на(количество процентов)
Python-сообщество
![]()
- Начало
- » Python для новичков
- » Создание теста с выбором ответов
#1 Июнь 6, 2020 14:39:33
oDoDo Зарегистрирован: 2020-05-05 Сообщения: 70 Репутация: 0 Профиль Отправить e-mail
Создание теста с выбором ответов
Как создавать тесты с выбором ответов?
Например:
x+2=4
А) x=2
B) x=4
C) x=3
D) x = 9
выбрав правильный ответ пишет “Правильно!” и переходит к следующему вопросу, иначе пишет “Ошибка” и предлагает пройти тест с начала.
#2 Июнь 7, 2020 11:17:21
xam1816 Зарегистрирован: 2020-05-11 Сообщения: 1262 Репутация: 108 Профиль Отправить e-mail
Создание теста с выбором ответов
class Task: def __init__(self,text,correct_variant,a,b,c='',d='',): self.text = text self.variant_of_answer=<> list_variant = ['a', 'b', 'c', 'd'] i = 0 for var in (a,b,c,d): if var != '': self.variant_of_answer[list_variant[i]]=var i+=1 self.correct_variant = correct_variant task_list = [] task_list.append(Task("x+2=4",'a','x=2','x=4','x=3','x=9')) task_list.append(Task("2+2*2",'b','8','6')) def display_task(n,task): print("Задача №<>:\n<>".format(n,task.text)) print("Варианты ответа:") for key,value in task.variant_of_answer.items(): print("<>) <>".format(key,value)) def check_variant(task): variant = input("Выберите вариант ответа: ") if variant in (task.variant_of_answer): if variant == task.correct_variant: print("Правильно\n") else: print("Не правильно\nПройти тест сначала?\n") choice = input("Введите да или нет: ") if choice in ('да',"нет"): if choice == "да": test() else: print("Все равно пройдите") test() else: print("это наверно да") test() else: print("Такого варианта нет!Введите маленькую латинскую букву варианта\n") check_variant(task) def test(): n = 0 for task in task_list: n+=1 display_task(n,task) check_variant(task) print("Вы прошли тест.Вы свободны") test()
Отредактировано xam1816 (Июнь 7, 2020 13:44:20)
#3 Июнь 7, 2020 13:12:08
AD0DE412 Зарегистрирован: 2019-05-12 Сообщения: 1130 Репутация: 44 Профиль Отправить e-mail
Создание теста с выбором ответов
однакож накрутили вы ) как человек это будет сдавать (предположу что это ему не для себя) то этож палево (тут ооп во все поля а он(она) базу не знает)
1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде 
2. чтобы вставить изображение залейте его куда нибудь (например) , нажмите
и вставьте ссылку на его url
…
есчщо
Отредактировано AD0DE412 (Июнь 7, 2020 13:24:20)