Замена двух элементов в Python из списка означает замену их позиций. Другими словами, если мы хотим взять два элемента по определенным индексам в списке и поменять их местами. Чтобы мы могли изменить положение элементов в списке.

Чтобы лучше понять проблему, рассмотрим пример. Предположим, у нас есть список чисел с элементами [1, 2, 3, 4, 5], и мы хотим поменять местами элементы с индексами 1 и 3.

После замены обновленный список должен иметь вид [1, 4, 3, 2, 5], где элемент с индексом 1 (который равен 2) заменяется элементом с индексом 3 (который равен 4).

Содержание

Используя присвоение запятой

Мы можем поменять местами позиции элементов, поскольку позиции элементов известны.

def swap_positions(list, position1, position2):
     
    list[position1], list[position2] = list[position2], list[position1]
    return list
 
list_of_elements = [30, 56, 19, 87]
position1, position2  = 1, 4
 
print(swap_positions(list_of_elements, position1-1, position2-1))

Здесь я использовал назначение запятых в этой программе Python для выполнения одновременного назначения или замены элементов в списке.

 list[position1], list[position2] = list[position2], list[position1]

Здесь мы вызываем функцию Python с именем swap_position с аргументами list_of_elements, Position1-1 и Position2-1. -1 корректирует позиции, поскольку индексация обычно начинается с 0.

print(swap_positions(list_of_elements, position1-1, position2-1))

Выход:

[87, 56, 19, 30]

Обратитесь к снимку экрана ниже, на нем представлены выходные данные программы Python для замены двух элементов в списке с использованием назначения запятых.

Используя присвоение запятой

С помощью переменной Temp

Мы увидим, как поменять местами два элемента в списке Python с помощью временной переменной. Это исходный код Python для замены двух элементов в списке с помощью временной переменной.

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

def swap_elements(list, order1, order2):
    temp=list[order1]
    list[order1]=list[order2]
    list[order2]=temp
    return list

List = [43, 15, 59, 99]
order1, order2 = 1, 3
 
print(swap_elements(List, order1-1, order2-1))

Выход:

[59, 15, 43, 99]

На изображении ниже показаны выходные данные программы Python для замены двух элементов в списке с использованием переменной temp.

С помощью переменной Temp

С помощью функции enumerate

В Python enumerate — это встроенная функция, которая добавляет счетчик к итерируемому объекту и возвращает его как перечисляемый объект (итератор с индексом и значением).

Вот полная программа Python для замены двух элементов в списке с помощью функции перечисления.

def swapElements_order(list, position1, position2):
    for i, x in enumerate(list):
        if i == position1:
            elem1 = x
        if i == position2:
            elem2 = x
    list[position1] = elem2
    list[position2] = elem1
    return list
 
List = [123, 65, 119, 90]
position1, position2 = 0, 2
print(swapElements_order(List, position1, position2))

Здесь, используя функцию enumerate для перебора элементов списка и используя условные операторы if в Python, мы проверим, равен ли текущий индекс значению указанной позиции.

    for i, x in enumerate(list):
        if i == position1:
            elem1 = x
        if i == position2:
            elem2 = x

Выход:

[119, 65, 123, 90]

Вы можете обратиться к снимку экрана ниже, чтобы увидеть выходные данные программы Python для замены двух элементов в списке с помощью функции перечисления.

С помощью функции enumerate

С помощью функции Pop

Функция pop() в Python используется для удаления элемента в указанной позиции. Это полный код Python для замены двух элементов в списке с помощью функции pop.

def swap_positions(list, order1, order2):
     
    first_ele = list.pop(order1)   
    second_ele = list.pop(order2-1)


    list.insert(order1, second_ele)  
    list.insert(order2, first_ele) 
    return list

List = [23, 65, 19, 90]
order1, order2  = 1, 3
 
print(swap_positions(List, order1-1, order2-1))

Функция pop() используется для удаления и возврата элемента по указанному индексу в Python. Поскольку индексы обычно начинаются с 0, -1 корректирует индекс ордера.

  first_ele = list.pop(order1)   
  second_ele = list.pop(order2-1)

Выход:

[29, 75, 13, 40]

Скриншот предоставляет выходные данные программы Python для замены двух элементов в списке с помощью функции pop() в Python.

С помощью функции Pop

Добавить комментарий