 Open in App
Not now

# Python program to interchange first and last elements in a list

• Difficulty Level : Easy
• Last Updated : 10 Aug, 2022

Given a list, write a Python program to swap first and last element of the list.

Examples:

```Input : [12, 35, 9, 56, 24]
Output : [24, 35, 9, 56, 12]

Input : [1, 2, 3]
Output : [3, 2, 1]```

Approach #1: Find the length of the list and simply swap the first element with (n-1)th element.

## Python3

 `# 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))`

Output:

`[24, 35, 9, 56, 12]`

Approach #2: The last element of the list can be referred as list[-1]. Therefore, we can simply swap list with list[-1].

## Python3

 `# 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))`

Output:

`[24, 35, 9, 56, 12]`

Approach #3: Swap the first and last element is using tuple variable. Store the first and last element as a pair in a tuple variable, say get, and unpack those elements with first and last element in that list. Now, the First and last values in that list are swapped.

## Python3

 `# 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))`

Output:

`[24, 35, 9, 56, 12]`

Approach #4: Using * operand.
This operand proposes a change to iterable unpacking syntax, allowing to specify a “catch-all” name which will be assigned a list of all items not assigned to a “regular” name.

## Python3

 `# Python3 program to illustrate ` `# the usage of * operand` `list` `=` `[``1``, ``2``, ``3``, ``4``]`   `a, ``*``b, c ``=` `list`   `print``(a)` `print``(b)` `print``(c)`

Output:

```1
[2, 3]
4```

Now let’s see the implementation of above approach:

## Python3

 `# 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))`

Output:

`[24, 35, 9, 56, 12]`

Approach #5: Swap the first and last elements is to use the inbuilt function list.pop(). Pop the first element and store it in a variable. Similarly, pop the last element and store it in another variable. Now insert the two popped element at each other’s original position.

## Python3

 `# 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))`

Output:

`[24, 35, 9, 56, 12]`

My Personal Notes arrow_drop_up
Related Articles