ПРИСВАИВАНИЕ И СОЗДАНИЕ ОБЪЕКТОВ В PYTHON
Для присваивания значений переменным в Python служит оператор «=«.
Выражение, стоящее справа от оператора присваивания, вычисляется, и полученное значение присваивается переменной, стоящей слева от оператора присваивания. При этом предыдущее значение, хранящееся в переменной, стирается и заменяется на новое. Если такой переменной не существует, то она создается и в нее записывается значение.
Создание переменных и объектов в Python происходит с помощью оператора присваивания.
Оператор » присвоить переменной a значение 5″.
Cложить значения 5 и 3, результат присвоить переменной x (записать в переменную x).
Прибавить 4 к значению, хранящемуся в переменной a, полученный результат присвоить переменной b (записать в переменную b).
Прибавить 1 к значению, хранящемуся в переменной b, полученный результат присвоить переменной b (записать в переменную b).
В результате выполнения этой строчки кода, значение переменной b увеличится на 1.
В правой части значение переменной может использоваться много раз:
Множественное присваивание
В результате выполнения этой строки кода в переменной a окажется число 5, в переменной b — 3, в переменной c — 1. Количество значений и количество переменных справа и слева от оператора присваивания должно совпадать. При множественном присваивании порядок присваивания формируется слева направо.
С помощью множественного присваивания можно поменять значения переменных между собой.
a, b = 5, 3 a, b = b, a print(a, b)
Множественное присваивание со списками
list1 = [5, 3, 1] a, b, c = list1
В переменной a окажется число 5, в переменной b — 3, в переменной c — 1.
Количество переменных должно быть равно количеству элементов списка.
Аналогичным образом это работает и для кортежей.
Множественное присваивание со строками
В a окажется «m», в b — «a», в c — «k», в d — «e».
Количество переменных должно быть равно количеству символов в строке.
Каскадное присваивание
В результате выполнения этой строки кода во всех переменных окажется число 5. Присваивание при это идет каскадом справа налево.
Инициализация переменных
Любая переменная, использующаяся в выражении, должна существовать.
Допустим, мы написали следующую программу:
a = 5 b = 3 d = a + b + c print(d)
При ее запуске мы получим сообщение об ошибке «NameError: name ‘c’ is not defined» , которое говорит нам, что переменная «c» не определена.
Действительно, переменной «c» в нашей программе не существует и при вычислении выражения a + b + c интерпретатор Python столкнулся с этой проблемой. Попробуем исправить эту ситуацию.
a = 5 b = 3 c = 2 d = a + b + c print(d)
Теперь всё нормально и после запуска программы мы получим результат вычислений.
Особенно важно обращать внимание на существование переменной в конструкциях, используемых, например, для счетчиков.
Следующий код вернет ошибку «NameError: name ‘k’ is not defined» .
Интерпретатор не сможет вычислить значение выражения k + 1, так как переменная k не определена.
Чтобы код нормально работал, следует создать переменную k, присвоив ей, например, 0. Это называется инициализировать переменную.
Составное присваивание
В составном операторе присваивания используются арифметические операторы.
Пример сложения с присваиванием:
Составной оператор += прибавляет к переменной значение выражения справа от оператора присваивания и записывает получившийся результат в эту переменную.
a += 5 эквивалентно a = a + 5.
Составные операторы присваивания используются для сокращения записи.
Таблица с составными операторами присваивания и их эквивалентами