Опубликован: 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()
Комментариев нет.