← Python

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

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

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 journey and assign it to your class.

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. Adds an item
B. Removes and returns the last 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. [1, 2, 3] ✓
B. [3, 2, 1]
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.
For Teachers

Create a free class, add this module to a journey, and track who's stuck.

Create a free teacher account →

No credit card. No setup fee. Make a class and invite students in under three minutes.

For Students

Practice this topic interactively, track progress, and unlock badges.

Start Learning Free →

Have a class code?