Python Programming Challenges
292 free challenges for GCSE Computer Science students. Perfect for OCR and AQA students looking to practise Python programming, or anyone who wants to sharpen their coding skills.
☰ Browse by Topic
Mixed Practice
Exam-style challenges that combine multiple programming concepts.
Bookstore Discount Calculator
Write a program for a bookstore that offers a 10% discount on orders over ยฃ50. Allow the user to input the total order a
Class Attendance Checker
Write a program that takes a list of student attendance (represented as 'P' for present and 'A' for absent) and outputs
Classroom Seating Plan
A teacher wants to create a seating plan for a classroom. Write a program that stores the names of 6 students in an arra
Grocery Store Inventory
FreshMart is a grocery store that needs a program to manage its inventory. Write a program that stores the names and pri
Inventory Stock Checker
Write a program to calculate the total stock of items in a 2D array where each row represents an item and the columns re
Library Book Loan System
A local library needs a program to track books on loan. Write a program that stores the titles of 5 books in an array. A
Lucky Draw
A school is running a lucky draw where students pick a random number between 1 and 50. Write a program that generates a
Random Workout Generator
FitLife wants to create a random workout generator. Write a program that stores 5 different exercises in an array. The p
Shopping Cart Total
Write a program to calculate the total cost of items in a shopping cart. The cart is represented as a list of tuples, ea
Student Grades Calculator
Write a program for a teacher to input 5 student names and their corresponding grades. Store these in two arrays and the
Theme Park Visitor Counter
FunLand theme park needs a program to count visitors. Write a program that asks the user for the number of visitors each
Airline Ticket Booking
Part 1: Write a program to calculate the cost of booking airline tickets based on the number of tickets and the class (E
Charity Donation Tracker
CodeRelief is tracking donations for their charity. Write a program that allows the user to enter the names of 10 donors
Charity Marathon Sponsor
Write a program for a charity marathon that tracks sponsors. The user should input the names of sponsors and the amount
Coffee Shop Loyalty Card
Coffee Corner offers a loyalty card where customers get a free drink after buying 10 drinks. Write a program that tracks
Concert Ticket Allocation
RockFest is allocating concert tickets. Write a program that stores the names of 5 ticket holders in an array. If someon
Delivery Time Estimator
A delivery company wants a program that estimates delivery times based on distance. The user should input the delivery d
Dinner Party Planner
"Gourmet Delights" catering service wants to streamline their event planning process. Write a function that takes the nu
Emergency Contact Information
A school needs a program to manage emergency contact information. Write a program that allows the user to input the name
Gym Membership Manager
Part 1: Create a program to manage gym memberships. Input the duration (in months) and membership type (Standard, Premiu
Hotel Room Availability Checker
Write a program that allows a hotel manager to enter the availability of 10 rooms in an array (available or booked). The
Movie Ticket Price Calculator
Write a program for a cinema that calculates ticket prices. The user should enter the number of adult and child tickets.
Personal Finance Manager
"SmartSaver" finance app wants to provide users with insights into their spending habits. Develop a program that reads t
Restaurant Bill Splitter
"Foodie Friends" group wants to simplify splitting the bill when dining out. Write a program that takes the total bill a
Restaurant Order System
Write a program that allows a waiter to take orders at a restaurant. The user should input the names of dishes ordered b
School Grade Tracker
"SmartEd" school needs a system to track students' grades. Develop a program that reads student grades from a text file,
Sports Event Scheduler
Part 1: Write a program to schedule sports events. Input the number of teams and the type of event (League, Knockout). L
Train Ticket Price Calculator
FastTrack is a train service. Write a program that allows the user to enter the number of stations they will travel thro
Travel Budget Planner
The "Wanderlust" travel agency needs a tool to help their clients plan their expenses. Create a program that takes the t
Energy Consumption Monitor
"EcoSavvy" energy company wants to analyze customers' energy consumption patterns. Create a program that reads energy us
Festival Budget Planner
Part 1: Write a program to plan the budget for a festival. Input the number of days, expected attendees, and the type of
Flight Booking System
"FlyHigh" airline needs a program to manage flight bookings. Develop a system that reads flight data from a text file, a
Inventory Management System
"SuperMart" supermarket needs an efficient way to manage their inventory. Create a program that takes the initial quanti
Investment Portfolio Manager
"WealthBuilder" investment firm wants to track clients' investment portfolios. Create a program that reads investment da
Online Store Order Processor
Part 1: Develop a program to process online store orders. Each order includes item price, quantity, and delivery type (S
Tech Support Ticket System
Part 1: Write a program to manage a tech support ticket system. Each ticket has a priority (High, Medium, Low) and time
University Course Grader
Part 1: Create a program to calculate final grades for students based on a 2D array where each row represents a student
Trace Table: Loop Output
Predict loop output - a key exam skill testing understanding of iteration.
Find the Bug: Selection Errors
Identify and fix common selection errors - tests debugging skills for exams.
Algorithm Design: Login System
Design a complete login system from requirements - tests decomposition and algorithm design.
Algorithm Design: Text Encryptor
Design a simple encryption algorithm combining string manipulation, iteration, and functions.
Data Processing: Student Records
Full data processing challenge combining files, lists, functions, and analysis.
Trace Table: Nested Loops
Trace through nested loop code - advanced exam technique for Paper 2.
Algorithm: Finding Duplicates
Design an algorithm to find duplicates in a list - tests algorithmic thinking.
Complete Program: Contact Book
Full program design combining all major topics - the ultimate exam preparation challenge.