Списки в действии
Давайте ненадолго оставим списки в стороне и рассмотрим одну интригующую проблему.
Представьте, что вам нужно переставить элементы списка, то есть поменять местами элементы в обратном порядке: первый и пятый, а также второй и четвертый элементы поменяются местами. Третий останется нетронутым.
Вопрос: как можно поменять местами значения двух переменных?
Взгляните на фрагмент кода:
variable_1 = 1
variable_2 = 2
variable_2 = variable_1
variable_1 = variable_2
Если вы сделаете что-то подобное, вы потеряете значение, ранее сохраненное в variable_2
. Изменение порядка выполнения заданий не поможет. Вам понадобится третья переменная, которая служит вспомогательной памятью.
Вот как это можно сделать:
variable_1 = 1
variable_2 = 2
auxiliary = variable_1
variable_1 = variable_2
variable_2 = auxiliary
Python предлагает более удобный способ перестановки - взгляните:
variable_1 = 1
variable_2 = 2
variable_1, variable_2 = variable_2, variable_1
Понятно, эффектно и элегантно - не правда ли?