Обмен значениями переменных (объектов)

Опубликован: 08.09.2023 103

В Python один из часто используемых трюков - обмен значениями без создания промежуточной переменной.

Способ применяется для любого количества переменных (и даже итерируемых последовательностей). Главное, чтобы количество элементов слева от оператора присваивания равнялось числу элементов справа.

a, b, c = 1, 2, 3
print(a, b, c)
a, b, c = c, b, a
print(a, b, c)

# Вывод
1 2 3
3 2 1

Такой способ обмена значениями применяется и для сложных вложенных конструкций:

for ((a, b), c) in [ ((1, 2), 3), ((4, 5), 6) ]:
    print(a, b, c)

# Вывод
1 2 3
4 5 6

Похожие посты

Методы преобразования списка в строку и обратно

Удаление дубликатов из списка

Фильтрация элементов итератора с помощью bool-списка функции itertools.compress()

Пропуск не нужных элементов последовательности с помощью itertools.dropwhile()

Комментариев нет.