Замена двух элементов в Python из списка означает замену их позиций. Другими словами, если мы хотим взять два элемента по определенным индексам в списке и поменять их местами. Чтобы мы могли изменить положение элементов в списке.
Чтобы лучше понять проблему, рассмотрим пример. Предположим, у нас есть список чисел с элементами [1, 2, 3, 4, 5], и мы хотим поменять местами элементы с индексами 1 и 3.
После замены обновленный список должен иметь вид [1, 4, 3, 2, 5], где элемент с индексом 1 (который равен 2) заменяется элементом с индексом 3 (который равен 4).
- Используя присвоение запятой
- С помощью переменной Temp
- С помощью функции enumerate
- С помощью функции Pop
Используя присвоение запятой
Мы можем поменять местами позиции элементов, поскольку позиции элементов известны.
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.
С помощью функции 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 для замены двух элементов в списке с помощью функции перечисления.
С помощью функции 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.