Как сделать варианты ответа в python
Перейти к содержимому

Как сделать варианты ответа в python

  • автор:

Как сделать варианты ответа в 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

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

Я Точно я, без кода тут не помочь.

Pr0gram1st

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

625ff315ac1a0168489151.png

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

Pr0gram1st

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

Я Точно я, с мальчики работает,а с девочкой не пишет «сканування крутости 1%»и вместо ти крутая на(количество процентов)пишет ти крутой на(количество процентов)

Python-сообщество

[RSS Feed]

  • Начало
  • » 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)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *