← Python

Lists – Methods (append, remove, pop, insert)

List methods modify the list in place by adding, removing, or repositioning items

Understanding Lists – Methods (append, remove, pop, insert) in Python

What it does: .append() adds one item to the end of the list. .insert(index, value) adds value at the specified index position. pop() removes the item AND returns it so you can use it. remove() removes only the first matching item — not all of them. insert(1, 99) inserts 99 AT index 1, shifting others right. sort() rearranges in ascending order by default. append() modifies the list directly and returns None. remove() raises ValueError when the item isn't found.

Common mistakes: append() returns None: don't assign it back. It modifies the list in-place. append() takes exactly one argument: add items one at a time.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 31–40) and word search (Modules 21–40).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
What does append() do?
Adds an item to the endAdds to the start
Matches
❌ nums = [1,2,3] nums.remove(99)
↓
Error: 99 not in list
Applying
Meanings
Term
.append(item)
Meaning
Adds an item to the end of the list.
Practice
nums = [1, 2, 3]
Testing
Gaps
nums.(4)
Check Answer
Spots
1nums = [1, 2, 3]
2nums = nums.append(4)

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Woodland Hedgehog' badge — Import Master, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. What does append() do?
A. Adds an item to the end ✓
B. Adds to the start
append() always adds to the END of the list
2. What does pop() do?
A. Removes and returns the last item ✓
B. Adds an item
pop() removes the item AND returns it so you can use it
3. What does remove('cat') do?
A. Removes the first 'cat' ✓
B. Removes all 'cat'
remove() removes only the first matching item — not all of them
4. nums = [1,2,3]\nnums.insert(1, 99)\nWhat is nums?
A. [99, 1, 2, 3]
B. [1, 99, 2, 3] ✓
insert(1, 99) inserts 99 AT index 1, shifting others right
5. nums = [3,1,2]\nnums.sort()\nWhat is nums?
A. [3, 2, 1]
B. [1, 2, 3] ✓
sort() rearranges in ascending order by default

Match the Pairs

nums = [1,2,3] nums.remove(99) → Error: 99 not in list
nums = [] nums.pop() → Error: pop from empty list
nums.append(4) → Valid: Adds 4 to end of list
nums.insert(0, 'new') → Ok: Inserts 'new' at index 0
n = [1,2,3] n.append(4) print(n) → Output: [1, 2, 3, 4]
n = [1,2,3] print(n.pop()) → Output: 3

Key Term

.append(item)
Adds an item to the end of the list.~~.insert(index, item)

Fill in the Blanks

1. nums = [1, 2, 3] nums.append(4) print(nums)
2. nums = [1, 2, 3] nums.insert(0, 99) print(nums)
3. pets = ['cat', 'dog'] pets.remove('cat') print(pets)
4. nums = [10, 20, 30] last = nums.pop() print(last)
5. nums = [3, 1, 2] nums.sort() print(nums)

Spot the Error

Question 1
A nums = [1, 2, 3]
B nums = nums.append(4)
C print('List:', nums)
D print('Done')
Line B — append() returns None: don't assign it back. It modifies the list in-place.
Question 2
A nums = [1, 2, 3]
B nums.append(4, 5)
C print('List:', nums)
D print('Done')
Line B — append() takes exactly one argument: add items one at a time
Question 3
A nums = [1, 2, 3]
B nums.remove(5)
C print('List:', nums)
D print('Done')
Line B — 5 is not in the list: remove() raises ValueError
Question 4
A nums = [1, 2, 3]
B nums.append[4]
C print('List:', nums)
D print('Done')
Line B — Use parentheses () to call methods, not square brackets []
Question 5
A sorted_nums = [3, 1, 2].sort()
B nums = [3, 1, 2]
C print('Sorted:', sorted_nums)
D print('Done')
Line A — sort() returns None: it modifies in-place. Use sorted() to get a new sorted list.

Student with a class code? Join your class →