CAS Community   >   Resources   >  

Self-marking python activities: try it, debug it extend it

Work your way through python tutorials and generate a pdf certificate to demonstrate your progress

Pete Dring

Created by Pete Dring
last edited Apr 05 2021 by Pete Dring

I teach python at KS3 and usually do a topic on coding an ‘artificially intelligent’ chatbot to try to pass the Turing test. Feedback from last year was that whilst some students enjoyed the step by step instructions, many found it frustrating for two reasons:

  • Some students want to be shown exactly what to do and struggle when they encounter errors or have to choose what to do for themselves.

  • Some students very quickly get bored of copying out other people’s code and want to experiment and have more of an outlet for their creativity.

I’ve started working on this series of python activities in an attempt to have some differentiated python resources that cater for a wider ability range without frustrating or leaving as many students behind.

Each activity focuses on one programming construct or concept and is structured in the following way:

  • Theory: read through a brief explanation of the key words and essential knowledge

  • Try It: try out some working example code with some challenges to adapt it slightly

  • Debug It: find and fix some common errors in some deliberately sabotaged code

  • Extend It: apply what you’ve learnt by extending a basic template to implement some open ended project ideas

Each activity is based on which lets you run python code in your browser so students can complete the activities on their own devices as a homework.

  1. Python Output *

  2. Python Input *

  3. Python Syntax Errors *

  4. Python Variables *

  5. Python Naming Conventions

  6. Python Data Types

  7. Python Runtime Errors

  8. Sequence in Python

  9. Selection in Python

  10. Logic errors in Python

  11. Lists in Python

  12. Iteration in Python

  13. Writing to files in Python

  14. Reading from files in Python

  15. Exception handling in Python

  16. Procedures in Python

  17. Functions in Python

  18. Parameters in Python

  19. Optimisation in Python

All are free with no sign up required.

Resources marked with a * are available as printable student workbooks in the files download with answers. They’re designed to be printed as a 4 page foldable booklet.

For more information click here:

Update: each activity now lets a student track their progress through the TryIt, DebugIt and ExtendIt activities then generate a PDF certificate to show their scores.

It’s a work in progress so let me know if you spot any mistakes. I’m planning a series of 20 but it might take a while to finish them…

You can find out how to create your own self marking python activities here:

Downloaded 20371 times.


This resource has attached files: to access these files, please tick the box below to assent to the license terms
License: The resources on CAS website are under Creative Commons Attribution-Share Alike 3.0 licence unless otherwise specified by the resource creators.

You must confirm that you have read and agree the licence's ToS before you can download the attachments of this resource.

I have read the licence agreement of this resource and agree to abide by its terms and conditions.

Feedback and Comments

Available when logged in (join via the front page, for free):
  • View 14 comments on this resource.
  • View resource history, links to related resources.
  • Leave feedback for the author(s), or help by editing the resource.

© 2021 BCS, The Chartered Institute for IT Registered charity: No. 292786
Using the websiteDisclaimer of liabilityCookies policyPrivacy notice