Ввод и вывод в Python. Input и print
Приятное общение пользователя с Python – одна из многих привлекательных черт программы. Простота, современность, лаконичность и понятность – вот чем завораживает программный продукт. Самыми первыми уроками для начинающих пользователей является изучение ввода и вывода информации. В Python input (ввод) и print (вывод) облегчают жизнь разработчикам.
Введение
Все без исключения программные продукты обрабатывают и выводят данные. Только в некоторых информация заложена изначально, а в других она поступает извне. Черпать данные можно из файлов либо непосредственно из вводимого пользователем текста. Во втором случае предполагается интерактивный режим работы. Получается, пользователь вводит информацию, программа ее обрабатывает и выводит на экран. В таком случае говорят, что код не замкнут на себе, а может «общаться» с внешней средой. Так, для ввода информации в последних версиях Python input используется.
Вывод информации
Для печати любых данных на экране используется стандартная встроенная функция print. В версии "Питона" 3 после слова print идут круглые скобки, в которых указывается выводимая информация. В версии 2.7 после зарезервированной команды print круглых скобок быть не должно.
В ранней версии после слова print написать переменную и поставить запятую будет означать подавление перевода строки. В новой редакции "Питона" с командой вывода в круглых скобках указывается переменная и end=” ”. Это означает добавление пробела вместо перевода строки.
В старой версии допускается написание только команды print, что означает Enter. В новой редакции необходимо вызвать функцию. Запись print () некорректна.
В одной команде с print в Python input работает. Об этой команде поговорим ниже.
Ввод информации
Чтобы ввести данные с консоли, необходима команда raw_input (Python 2.7). Она выводит приглашение пользователю, ожидает ввода данных и осуществляет дальнейшую работу в соответствии с поступившими аргументами. В 3-й версии Python input используется. В чем разница между двумя командами?
В более ранних версиях (2.7) raw_input была необходима для ввода строковых типов данных. Если нужно было получить число, то команда выполнялась с функцией int(). Эта функция переводила число из строки в целый тип. В этой же версии функции input Python вводила численные выражения, и использовать дополнительно int не было необходимости. Разработчики Python 3.0 устранили raw_input и оставили только input. Если через input в новой версии ввести число, то нужно дополнительно задействовать int или float, чтобы получить целочисленное или вещественное выражение. Если использовать команду с пустыми круглыми скобками, то программа будет ожидать действий со стороны пользователя.
По мнению некоторых экспертов, использовать в Python input string не рекомендуется, поскольку интерпретатор может выполнять синтаксические действия через эту команду. Это чревато брешью в безопасности программного кода.
Если в Python 3.0 не «оцифровать» строку, то при выполнении математических действий введенные данные будут складываться как строки.
Вот так должен выглядеть правильный фрагмент программы с использованием input и числовых данных.
Задачи с решением и алгоритмом
1. Создать программу, которая будет спрашивать у пользователя его имя и возраст. Вывести на экран сообщение, в котором говорится, сколько лет ему было бы через век.
Алгоритм:
- вывести на экран приглашение для дальнейшего ввода имени и возраста;
- произвести необходимые математические расчеты;
- вывести сообщение по типу: «Марина, 100 лет Вам исполнится в 2099 году»
2. Написать программу, в которой даются 2 строки. Поменять между собой 2 первых символа каждой строки.
Алгоритм:
- присвоить новой переменной сумму срезов;
- присвоить второй переменной сумму срезов;
- вернуть значение функции;
- вывести на экран результат.
Задачи на закрепление
1. Написать код, который будет искать и выводить на экран значение гипотенузы прямоугольного треугольника. Длину катетов задает пользователь.
2. Составить программный код, который будет запрашивать у пользователя коэффициенты квадратного уравнения. В дальнейшем на экран должны выводиться корни квадратного уравнения.
3. Написать программу, в которой выводится приглашение пользователю решить математический пример: 4*100-54. Если вводится правильный ответ, то появляется сообщение с поздравлениями. Если же нет, на экран выводится уведомление об ошибке. Дополнительно нужно переделать программу, в которой в цикле while эти действия будут повторяться до тех пор, пока пользователь не введет правильный ответ.