Choose exam board for KS4 Computer Science (GCSE)
Choose exam board for KS4 English
Choose exam board for KS4 French
Choose exam board for KS4 Geography
Choose exam board for KS4 German
Choose exam board for KS4 History
Choose tier for KS4 Maths
Choose exam board for KS4 Music
Choose exam board for KS4 Physical education (GCSE)
Choose exam board for KS4 Religious education (GCSE)
Choose exam board for KS4 Spanish

      Iterating through data structures

      Lesson details

      Learning outcome

      I can use iteration to repeatedly add items to lists and check the contents of a string.

      Key learning points

      1. Condition-controlled iteration is implemented using while loops in Python.
      2. A string is like a list in structure but is immutable, so elements cannot be changed, added or removed.
      3. Some operations that can be performed on lists can also be performed on strings.

      Keywords

      • Iteration - the process of repeating a sequence of instructions within a program loop

      • String - a sequence of characters, e.g. letters, numbers, spaces, and other symbols

      • Mutable - able to be changed

      • Immutable - not able to be changed

      Common misconception

      Strings are mutable meaning that any character within the string can be changed.

      Strings are immutable. The elements of a string cannot be changed. If changes to the string are required, the whole string must be rewritten.

      Teacher tip

      A string can be referenced using an index value. Break apart on a whiteboard how the characters of a string are referenced starting with the first character at index 0 and then every subsequent character with the next index value.

      Equipment

      Pupils will need access to a device that can edit and run Python programs. Examples in this lesson use the RPF Code Editor https://oak.link/python-editor

      Licence

      This content is © Oak National Academy Limited (2026), licensed on Open Government Licence version 3.0
      except where otherwise stated. See Oak's terms & conditions
      (Collection 2).

      Lesson video

      Loading...

      Prior knowledge starter quiz

      6 Questions

      Q1.
      What is the correct syntax in Python to initialise a variable called age and set its value to the numerical value 13?

      age (13)
      Correct answer: `age = 13`
      age = "13"
      set age to 13

      Q2.
      What is the correct syntax in Python to initialise a variable called name and set its value to Laura?

      name (Laura)
      name ("Laura")
      Correct answer: `name = "Laura"`
      name = Laura

      Q3.
      Which programming construct is used to repeatedly perform actions in a program?  

      sequence
      selection
      Correct answer: iteration
      decomposition

      Q4.
      are used to tell a program whether a condition has been met or not.

      Correct Answer: Flags

      Q5.
      A while loop will run ...

      a set number of times.
      Correct answer: until a condition is no longer met.

      Q6.
      12
      colours = ["red", "blue", "yellow", "green"] print (colours[1])
      What colour would be printed by the program?
      Code colour

      red
      Correct answer: blue
      yellow
      green

      6 Questions

      Q1.
      A is a data type that is a collection of characters.

      Correct Answer: string

      Q2.
      Lists are , which means that their contents can be modified, without having to create a new list.

      Correct Answer: mutable

      Q3.
      Which code would check the first character of name1 does not appear anywhere in name2?

      name1[0] == name2[0]
      len(name1) != len(name2)
      Correct answer: `name1[0] not in name2`

      Q4.
      Which of the following statements about strings is true?

      Strings are mutable.
      Correct answer: Strings are immutable.
      Strings can only hold letters.

      Q5.
      What code would you use if you wanted to check the value of the first letter held in the string: message = "Hello"?

      Correct answer: `message[0]`
      message[1]
      message["H"]
      message[first]

      Q6.
      If you update the value held by a string, the previous value is .

      Correct Answer: overwritten

      To help you plan your 9 computing lesson on: Iterating through data structures, download all teaching resources for free and adapt to suit your pupils' needs...