Обмен списками Python: подробное руководство с несколькими методами

Чтобы поменять местами элементы в списке в Python, вы можете использовать несколько методов. Вот несколько подробных объяснений наиболее распространенных подходов:

Метод 1: использование временной переменной.
Этот метод предполагает использование временной переменной для хранения значения одного элемента при его замене другим элементом.

def swap_elements(lst, i, j):
    temp = lst[i]
    lst[i] = lst[j]
    lst[j] = temp
# Example usage:
my_list = [1, 2, 3, 4, 5]
swap_elements(my_list, 1, 3)
print(my_list)  # Output: [1, 4, 3, 2, 5]

Метод 2: использование распаковки кортежей
В Python вы можете использовать распаковку кортежей для замены элементов без необходимости использования временной переменной.

def swap_elements(lst, i, j):
    lst[i], lst[j] = lst[j], lst[i]
# Example usage:
my_list = [1, 2, 3, 4, 5]
swap_elements(my_list, 1, 3)
print(my_list)  # Output: [1, 4, 3, 2, 5]

Метод 3: использование методов Python list.pop() и list.insert().
Другой подход — использование методов pop()и insert(). методы для удаления одного элемента и вставки его в другой индекс.

def swap_elements(lst, i, j):
    lst.insert(i, lst.pop(j))
# Example usage:
my_list = [1, 2, 3, 4, 5]
swap_elements(my_list, 1, 3)
print(my_list)  # Output: [1, 4, 3, 2, 5]

Метод 4: использование операции XOR
Этот метод немного необычен и работает только с целыми числами. Он предполагает использование операции XOR (^) для замены элементов.

def swap_elements(lst, i, j):
    lst[i] = lst[i] ^ lst[j]
    lst[j] = lst[i] ^ lst[j]
    lst[i] = lst[i] ^ lst[j]
# Example usage:
my_list = [1, 2, 3, 4, 5]
swap_elements(my_list, 1, 3)
print(my_list)  # Output: [1, 4, 3, 2, 5]