Переменные, условные ветвления и структура кода
Дополнительный материал для самостоятельного изучения дома по предмету «Введение в язык программирования Python».
1. Переменные
Переменная — это имя, под которым программа хранит какое-либо значение. Можно представить переменную как подписанную коробку: на коробке написано имя, а внутри лежит значение.
name = "Алексей"
age = 18
temperature = 21.5
Здесь созданы три переменные:
nameхранит текст;ageхранит целое число;temperatureхранит дробное число.
= в Python означает не «равно» в математическом смысле, а присвоить значение.
Как использовать переменную
name = "Маша"
print(name)
Результат:
Маша
После создания переменной её можно использовать много раз:
price = 120
count = 3
total = price * count
print(total)
Программа умножит 120 на 3 и сохранит результат в переменную total.
Основные типы данных
| Тип | Что хранит | Пример |
|---|---|---|
int |
целые числа | age = 17 |
float |
дробные числа | height = 1.75 |
str |
текст | city = "Сургут" |
bool |
логическое значение | is_ready = True |
Получение данных от пользователя
Функция input() позволяет программе получить текст, введённый пользователем.
name = input("Введите ваше имя: ")
print("Привет,", name)
input() всегда возвращает строку. Если нужно получить число, строку необходимо преобразовать.
age = int(input("Введите возраст: "))
height = float(input("Введите рост: "))
Создайте программу, которая спрашивает у пользователя его имя и любимое число, а затем выводит оба значения на экран.
Показать пример решения
name = input("Введите имя: ")
number = int(input("Введите любимое число: "))
print("Имя:", name)
print("Любимое число:", number)
2. Условные ветвления
Иногда программа должна выполнять разные действия в зависимости от ситуации. Для этого используются условия.
Простейший вариант:
temperature = 5
if temperature < 10:
print("На улице холодно")
Python проверяет условие temperature < 10. Если оно истинно, выполняется строка внутри блока if.
Операторы сравнения
| Оператор | Значение |
|---|---|
== | равно |
!= | не равно |
> | больше |
< | меньше |
>= | больше или равно |
<= | меньше или равно |
= и ==.= — присвоение значения.== — проверка равенства.
if и else
else выполняется тогда, когда условие в if оказалось ложным.
number = int(input("Введите число: "))
if number > 0:
print("Число положительное")
else:
print("Число не является положительным")
if, elif и else
Если вариантов больше двух, применяется elif.
temperature = int(input("Введите температуру: "))
if temperature > 25:
print("Жарко")
elif temperature > 10:
print("Тепло")
else:
print("Холодно")
Проверка идёт сверху вниз. Как только Python находит подходящее условие, остальные ветки уже не выполняются.
Логические операторы
Истина, если выполнены оба условия.
age >= 18 and age <= 60
Истина, если выполнено хотя бы одно условие.
day == "сб" or day == "вс"
Напишите программу, которая получает число и выводит:
- «Больше 100», если число больше 100;
- «Равно 100», если число равно 100;
- «Меньше 100», во всех остальных случаях.
Показать пример решения
number = int(input("Введите число: "))
if number > 100:
print("Больше 100")
elif number == 100:
print("Равно 100")
else:
print("Меньше 100")
3. Структура кода
Код программы должен быть написан так, чтобы его было легко читать. Даже если программа работает, плохо организованный код быстро становится сложным для понимания.
Правило 1. Выполнение идёт сверху вниз
name = input("Введите имя: ")
print("Привет,", name)
print("Программа завершена")
Сначала Python выполняет первую строку, затем вторую, затем третью.
Правило 2. Отступы имеют значение
В Python отступ показывает, какие команды относятся к условию.
age = 20
if age >= 18:
print("Доступ разрешён")
print("Пользователь совершеннолетний")
print("Проверка завершена")
Первые две команды print() находятся внутри условия, а последняя — уже за его пределами.
if, программа выдаст ошибку.
Правило 3. Используйте понятные имена
Так читать проще:
student_name = "Иван"
student_age = 17
total_price = 450
А такой код понять сложнее:
a = "Иван"
b = 17
c = 450
Правило 4. Разделяйте программу на смысловые части
У простой программы часто есть три этапа:
- получить данные;
- обработать их;
- вывести результат.
# Получение данных
price = float(input("Цена товара: "))
count = int(input("Количество: "))
# Обработка
total = price * count
# Вывод результата
print("Итоговая стоимость:", total)
Комментарии начинаются со знака #. Python их не выполняет — они нужны человеку, который читает код.
4. Как всё работает вместе
Рассмотрим программу, в которой одновременно используются переменные, ввод данных, вычисления и условное ветвление.
money = int(input("Сколько у вас рублей? "))
price = int(input("Сколько стоит товар? "))
if money >= price:
change = money - price
print("Покупку можно совершить")
print("Останется рублей:", change)
else:
missing = price - money
print("Денег недостаточно")
print("Не хватает рублей:", missing)
Что происходит:
- пользователь вводит количество денег;
- вводит цену товара;
- программа сравнивает два значения;
- если денег хватает — вычисляет остаток;
- если денег не хватает — вычисляет недостающую сумму.
5. Частые ошибки
Ошибка 1. Сравнение через один знак =
# Неправильно
if age = 18:
# Правильно
if age == 18:
Ошибка 2. Забыли преобразовать input() в число
# Неправильно для вычислений
age = input("Возраст: ")
# Правильно
age = int(input("Возраст: "))
Ошибка 3. Нет отступа
# Неправильно
if number > 0:
print("Положительное")
# Правильно
if number > 0:
print("Положительное")
Ошибка 4. Непонятные имена переменных
# Плохо
x = 100
y = 5
z = x * y
# Лучше
price = 100
count = 5
total = price * count
6. Задания для самостоятельной работы
Пользователь вводит цену одного товара и количество товаров. Программа должна вычислить и вывести общую стоимость.
Пользователь вводит температуру. Если она ниже 0 — вывести «Мороз», если от 0 до 20 включительно — «Прохладно», если выше 20 — «Тепло».
Пользователь вводит число. Программа должна определить, является ли оно положительным, отрицательным или равным нулю.
Пользователь вводит количество денег и цену товара. Если денег достаточно, программа выводит сумму сдачи. Если недостаточно — сколько рублей не хватает.
7. Что нужно запомнить
- Переменная хранит значение под определённым именем.
input()получает данные от пользователя.int()иfloat()преобразуют текст в числа.ifпозволяет выполнить код только при выполнении условия.elifдобавляет дополнительные варианты.elseвыполняется, если предыдущие условия не подошли.- В Python отступы являются частью структуры программы.
- Хороший код должен быть понятным не только компьютеру, но и человеку.