Python: Урок 8. Введення даних з клавіатури

Комп'ютерні програми обробляють дані, здійснюючи над ними операції, які задав програміст, і які були обумовлені поставленими завданнями. Дані в програму можна "закласти" в процесі її розробки. Однак така програма завжди буде обробляти одні й ті ж дані і повертати один і той же результат. Найчастіше потрібно зовсім інше - програма повинна обробляти різні (відносно, в певному діапазоні) дані, що надходять до неї з зовнішніх джерел. В якості останніх можуть виступати файли або клавіатура.

Коли інформація вводиться з клавіатури, а результати виводяться на екран монітора, то можна говорити про інтерактивний режим роботи програми. Вона обмінюється інформацією із зовнішнім для неї середовищем: може виводити і отримувати дані в процесі виконання, і не є замкнутою сама на собі. З виведенням даних ми вже почасти знайомі: виведенням на екран (і не тільки) в мові програмування Python займається функція print().

Введення даних з клавіатури в програму (починаючи з версії Python 3.0) здійснюється за допомогою функції input(). Коли дана функція виконується, то потік виконання програми зупиняється в очікуванні даних, які користувач повинен ввести за допомогою клавіатури. Після введення даних і натискання Enter, функція input() завершує своє виконання і повертає результат, який представляє собою рядок символів, введених користувачем.
>>> input()
1234
'1234'
>>> input()
Hello World!
'Hello World!'
Коли виконувана програма пропонує користувачеві що-небудь ввести, то користувач може не зрозуміти, що від нього хочуть. Треба якось повідомити, введення яких даних очікує програма. З цією метою функція input() може приймати необов'язковий аргумент-запрошення рядкового типу; при виконанні функції повідомлення буде з'являтися на екрані та інформувати людину про запитувані дані.
>>> input ("Введіть номер карти: ")
Введіть номер картки: 98765
'98765 '
>>> input('Input your name: ')
Input your name: Sasha
'Sasha'
З прикладів видно, що дані повертаються у вигляді рядка, навіть якщо було введено число. У більш ранніх версіях Python були дві вбудовані функції, що дозволяли отримувати дані з клавіатури: raw_input(), яка повертала в програму рядок та input(), яка повертала число. Починаючи з версії Python 3.0, якщо потрібно отримати число, то результат виконання функції input() змінюють за допомогою функцій int() або float().
>>> input ('Введіть число: ')
Введіть число: 10
'10 '
>>> int(input ('Введіть число: '))
Введіть число: 10
10
>>> float(input ('Введіть число: '))
Введіть число: 10
10.0
Результат, що повертається функцією input(), зазвичай присвоюють певній змінній для подальшого використання в програмі.
>>> userName = input ('What is your name? ')
What is your name? Masha
>>> exp = input ('3*34=')
3*34=102
>>> exp = int(exp) + 21
>>> userName
'Masha'
>>> exp
123

Практична робота

1. Створіть скрипт (і збережіть як файл data.py), який би запитував у користувача:
Його ім'я: "What is your name?"
Вік: "How old are you?"
Місце проживання: "Where are you live?"

А потім має вивести три рядки
"This is ім'я"
"It is вік"
"He live in місце проживання"

(замість слів ім'я, вік, місце проживання повинні бути відповідні дані, що введені користувачем).

2. Напишіть програму (файл example.py), яка пропонувала б користувачеві вирішити приклад 4*100-54. Якщо користувач напише правильну відповідь, то отримає привітання від програми, інакше - програма повідомить йому про помилку. (При вирішенні задачі використовуйте конструкцію if-else.)

3. Перепишіть попередню програму так, щоб користувачеві пропонувалося вирішувати приклад до тих пір, поки він не напише правильну відповідь. (При вирішенні задачі використовуйте цикл while.)

Зміст курсу

Вступ
Урок 1. Історія мов програмування. Компіляція та інтерпретація
Урок 2. Знайомство з Python і середовищами програмування
Урок 3. Типи даних в програмуванні. Визначення змінної
Урок 4. Логічні вирази
Урок 5. Умовний оператор. Інструкція if
Урок 6. Множинне розгалуження
Урок 7. Цикл while
Урок 8. Введення даних з клавіатури
Урок 9. Рядки як послідовності символів
Урок 10. Списки - змінювані послідовності
Урок 11. Cловники
Урок 12. Цикл for
Урок 13. Функції
Урок 14. Параметри і аргументи функцій. Локальні та глобальні змінні
Урок 15. Перевірочна робота з основ програмування на Python

Коментарі

Популярні дописи з цього блогу

Азбука Морзе Українською

Python: Урок 4. Логічні вирази

Python: Урок 3. Типи даних в програмуванні. Визначення змінної