1.5. Переменные, присваивание
1.5. Переменные, присваивание
Переменную можно сравнить с контейнером, в котором можно хранить обычные числа, последовательности чисел (массивы) или строки.
Посмотрим, как работают переменные. Перед использованием необходимо объявить переменную. Для этого сначала запустим редактор и создадим новый документ. Далее, надо придумать имя переменной. Имя переменной (идентификатор) должно удовлетворять условиям:
- Первым символом идентификатора должна быть латинская буква.
- Вторым и последующим символом идентификатора может быть латинская буква или цифра.
- Идентификатор не должен повторять зарезервированные слова в языке.
Переменная это что-то вроде ссылки. В дальнейшем программа будет знать, что такой-то переменной присвоено такое-то значение. Но если вы ниже в программе измените значение переменной, то далее эта переменная будет иметь новое значение, а старое будет стёрто. Программисты говорят так: переменную объявляют, а значение ей присваивают (знак =). Продолжим школьный пример. Мы задаем (то есть объявляем) переменную girls и присваиваем ей значение 10. Вот как это выглядит:
То же самое с мальчиками:
Кстати, эти две переменные автоматически становятся целочисленными. Такая особенность языка. Теперь в дальнейшем в программе мы можем уже не подставлять в любых вычислениях числа 15 или 10, а подставлять переменные girls или boys.
Если вы зададите неправильное имя переменной, то интерпретатор укажет на ошибку. Попробуйте запустить такой код:
Потренируйтесь с правильными именами переменных.
Чтобы узнать количество учащихся студентов в каждом классе, нам надо сложить не 10 и 15, а сложить переменные girls + boys. Это выражение мы присваиваем переменной class_students, и в дальнейшем мы сможем оперировать уже этой переменной, указывая ее в коде программы, и не писать каждый раз 10 + 15. Попробуем написать этот код:
Теперь посчитаем наши шторы. Для этого заведем еще одну переменную cost, которая будет отвечать за то, сколько денег сбрасывает каждый ученик:
girls = 10
boys = 15
cost = 50
class_students = girls + boys
class_money = class_students * 50
print(class_money)
Некоторые могут спросить – но ведь несложно же взять числа 10 и 15 и каждый раз их подставлять? Да, это так, если программа самая простая. Но если программа создается как интерактивная, то есть компьютер будет нас спрашивать: сколько учится девочек в вашем классе? И мы вводим число, например, 18. Затем компьютер опять спросит – а сколько мальчиков учится в вашем классе? Мы пишем – 12. Затем компьютер по заданной программе производит расчеты и дает сумму, разность и т.д.
А если в соседнем классе учатся 20 девочек и 10 мальчиков? Тогда придется переписывать программу полностью? Нет! Для написания единообразной программы для всех классов школы как раз и пригодятся переменные. Учителю надо только внести число девочек и мальчиков и программа сама произведет расчеты.
Для переменных существует один очень распространённый алгоритм, который пригодиться нам в дальнейшем - это обмен местами значений двух переменных. Как взять и просто их поменять? Если мы напишем напрямую:
Мы увидим, что программа не работает! Она выдаёт обе четверки! Хм, а ведь правильно старое значение же стирается из переменной. Поэтому надо просто воспользоваться еще одной, временной переменной:
Теперь всё на других местах!
Задачи для самостоятельного решения