Введення даних з клавіатури

Основи програмування на Python

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

Введення даних з клавіатури в програму (починаючи з версії Python 3.0) здійснюється за допомогою функції input (). Якщо цю функцію виконується, то потік виконання програми зупиняється в очікуванні даних, які користувач повинен ввести за допомогою клавіатури. Після введення даних і натискання Enter, функція input () завершує своє виконання і повертає результат, який є рядком символів, введених користувачем.

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

З прикладів видно, що дані повертаються у вигляді рядка, навіть якщо було введено число. У більш ранніх версіях Python були дві вбудовані функції, що дозволяють отримувати дані з клавіатури: raw_input (). повертає в програму рядок і input (). повертає число. Починаючи з версії Python 3.0, якщо потрібно отримати число, то результат виконання функції input () змінюють за допомогою функцій int () або float ().

Результат, що повертається функцією input (). зазвичай привласнюють змінної для подальшого використання в програмі.

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

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.)

exp1 змінюється на потрібну кількість, але все одно видає "Ніправільна"
пробував ще варіанти з 1 і 2-ма змінними - поки == відповідь Ніправільна на будь-які числа
навіть виставляв if exp1 == 346, але. поздоровлення приходять тільки, якщо поставити! =. і так само на будь-яке число

підкажіть будь ласка в чому не правий і як було б правильно?

Якщо у вас Python версії 3, то функція input повертає рядок, і виходить, що ви порівнюєте рядок і число. Вони завжди не рівні.

Схожі статті