SyntaxStudy
Sign Up
Python Slicing and Unpacking
Python Intermediate 8 min read

Slicing and Unpacking

Slicing and Unpacking

Slicing

lst = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(lst[2:5])     # [2, 3, 4]
print(lst[:3])      # [0, 1, 2]
print(lst[7:])      # [7, 8, 9]
print(lst[::2])     # [0, 2, 4, 6, 8] (step)
print(lst[::-1])    # reversed

Unpacking

first, *rest = [1, 2, 3, 4, 5]
print(first)  # 1
print(rest)   # [2, 3, 4, 5]

*start, last = [1, 2, 3, 4, 5]
a, b, *c, d = [1, 2, 3, 4, 5, 6]

Swap

a, b = 1, 2
a, b = b, a  # swap without temp
Pro Tip

Slicing always returns a new list — it never modifies the original.