Получив список, напишите программу на Python, чтобы поменять местами первый и последний элемент списка.
Примеры:
Input : [12, 35, 9, 56, 24]
Output : [24, 35, 9, 56, 12]
Input : [1, 2, 3]
Output : [3, 2, 1]
Подход № 1: Найдите длину списка и просто замените первый элемент на (n-1)th элемент.
# Python3 program to swap first
# and last element of a list
# Swap function
def swapList(newList):
size = len(newList)
# Swapping
temp = newList[0]
newList[0] = newList[size - 1]
newList[size - 1] = temp
return newList
# Driver code
newList = [12, 35, 9, 56, 24]
print(swapList(newList))
Выход:
[24, 35, 9, 56, 12]
Подход № 2: Последний элемент списка можно назвать списком[-1]. Поэтому мы можем просто поменять список[0] на список[-1].
# Python3 program to swap first
# and last element of a list
# Swap function
def swapList(newList):
newList[0], newList[-1] = newList[-1], newList[0]
return newList
# Driver code
newList = [12, 35, 9, 56, 24]
print(swapList(newList))
Выход:
[24, 35, 9, 56, 12]
Подход № 3: Замените первый и последний элемент с помощью переменной кортежа. Сохраните первый и последний элемент как пару в переменной кортежа, скажем получить, и распакуйте эти элементы с первым и последним элементом в этом списке. Теперь первое и последнее значения в этом списке меняются местами.
# Python3 program to swap first
# and last element of a list
# Swap function
def swapList(list):
# Storing the first and last element
# as a pair in a tuple variable get
get = list[-1], list[0]
# unpacking those elements
list[0], list[-1] = get
return list
# Driver code
newList = [12, 35, 9, 56, 24]
print(swapList(newList))
Выход:
[24, 35, 9, 56, 12]
Подход № 4: Использование * операнда.
Этот операнд предлагает изменение синтаксиса итерационной распаковки, позволяющее указать “универсальное” имя, которому будет присвоен список всех элементов, не присвоенных “обычному” имени.
# Python3 program to illustrate
# the usage of * operarnd
list = [1, 2, 3, 4]
a, *b, c = list
print(a)
print(b)
print(c)
Выход:
1
[2, 3]
4
Теперь давайте посмотрим на реализацию вышеуказанного подхода:
# Python3 program to swap first
# and last element of a list
# Swap function
def swapList(list):
start, *middle, end = list
list = [end, *middle, start]
return list
# Driver code
newList = [12, 35, 9, 56, 24]
print(swapList(newList))
Выход:
[24, 35, 9, 56, 12]
Подход № 5: Поменять местами первый и последний элементы можно с помощью встроенной функции list.pop(). Вставьте первый элемент и сохраните его в переменной. Аналогично, вставьте последний элемент и сохраните его в другой переменной. Теперь вставьте два выскочивших элемента в исходное положение друг друга.
# Python3 program to swap first
# and last element of a list
# Swap function
def swapList(list):
first = list.pop(0)
last = list.pop(-1)
list.insert(0, last)
list.append(first)
return list
# Driver code
newList = [12, 35, 9, 56, 24]
print(swapList(newList))
Выход:
[24, 35, 9, 56, 12]