Practice
Exercise library
All 811 graded exercises. Each opens in its lesson, where the examples that teach it are right above.
811 exercises · page 1 of 14
- Say helloTrack 1 · Your first programGuided · ●
- A receipt headerTrack 1 · Your first programChallenge · ●
- Fix the cafe billTrack 1 · Your first programDebugging · ●
- Switch off a lineTrack 1 · How Python reads your codeGuided · ●
- A documented timetableTrack 1 · How Python reads your codeChallenge · ●
- Fix the delivery noteTrack 1 · How Python reads your codeDebugging · ●●
- Total a cafe orderTrack 1 · Numbers and arithmeticGuided · ●
- Pack water bottles into boxesTrack 1 · Numbers and arithmeticChallenge · ●●
- Fix the average markTrack 1 · Numbers and arithmeticDebugging · ●●
- Split a bill exactly and in whole riyalsTrack 1 · Numbers and arithmeticEdge cases · ●●
- A sign with quotesTrack 1 · Text and stringsGuided · ●
- A receipt bannerTrack 1 · Text and stringsChallenge · ●●
- A tab-separated stock tableTrack 1 · Text and stringsEdge cases · ●●
- Fix the broken file pathTrack 1 · Text and stringsDebugging · ●●
- Print a date with sepTrack 1 · Printing in depthGuided · ●
- A tile order summaryTrack 1 · Printing in depthChallenge · ●●
- Fix the boarding countdownTrack 1 · Printing in depthDebugging · ●●
- Total a stationery orderTrack 1 · Naming values with variablesGuided · ●
- Track warehouse stockTrack 1 · Naming values with variablesChallenge · ●●
- Fix the budget programTrack 1 · Naming values with variablesDebugging · ●●
- Swap two shiftsTrack 1 · Naming values with variablesEdge cases · ●●
- Greet a customer by nameTrack 1 · Asking for inputGuided · ●
- Work out a parking feeTrack 1 · Asking for inputChallenge · ●●
- Price fruit by weightTrack 1 · Asking for inputChallenge · ●●
- Fix the seat counterTrack 1 · Asking for inputDebugging · ●●
- Fix a SyntaxErrorTrack 1 · Reading error messagesGuided · ●
- Fix three errors in a delivery quoteTrack 1 · Reading error messagesChallenge · ●●
- An error that only some inputs causeTrack 1 · Reading error messagesEdge cases · ●●
- Average of three marksTrack 1 · Writing small programsGuided · ●●
- Estimate the fuel cost of a tripTrack 1 · Writing small programsChallenge · ●●●
- Convert minutes to hours and minutesTrack 1 · Writing small programsEdge cases · ●●
- Put the steps in orderTrack 1 · Writing small programsDebugging · ●●
- Fix the discount calculatorTrack 1 · Debugging: first stepsGuided · ●●
- Fix the VAT receiptTrack 1 · Debugging: first stepsChallenge · ●●●
- Totals that look almost rightTrack 1 · Debugging: first stepsEdge cases · ●●
- Milestone 1: the headerTrack 1 · Mini project: a shop receiptGuided · ●
- Milestone 2: the first itemTrack 1 · Mini project: a shop receiptProject milestone · ●●
- Milestone 3: second item and subtotalTrack 1 · Mini project: a shop receiptProject milestone · ●●
- Milestone 4: VAT and totalTrack 1 · Mini project: a shop receiptChallenge · ●●
- Milestone 5: payment and changeTrack 1 · Mini project: a shop receiptEdge cases · ●●
- Store a product's detailsTrack 2 · Variables and assignmentGuided · ●
- Track a wallet balanceTrack 2 · Variables and assignmentChallenge · ●●
- Fix the shift swapTrack 2 · Variables and assignmentDebugging · ●●
- Rotate three delivery routesTrack 2 · Variables and assignmentEdge cases · ●●
- Use constants for VAT and deliveryTrack 2 · Naming and readabilityGuided · ●
- Rename a payroll calculationTrack 2 · Naming and readabilityChallenge · ●●
- Fix the names that stop a programTrack 2 · Naming and readabilityDebugging · ●●
- Convert minutes to hours and minutesTrack 2 · Integers, floats and operatorsGuided · ●
- Plan a shipment of boxesTrack 2 · Integers, floats and operatorsChallenge · ●●●
- Grow a savings balanceTrack 2 · Integers, floats and operatorsChallenge · ●●
- Fix the average scoreTrack 2 · Integers, floats and operatorsDebugging · ●●
- Build a cart total step by stepTrack 2 · Integers, floats and operatorsEdge cases · ●●
- Add VAT to a priceTrack 2 · Float precision and roundingGuided · ●
- Split a payment into instalmentsTrack 2 · Float precision and roundingChallenge · ●●●
- Convert SAR to whole halalasTrack 2 · Float precision and roundingEdge cases · ●●
- Fix the discount receiptTrack 2 · Float precision and roundingDebugging · ●●
- Make initials for a name badgeTrack 2 · Strings as dataGuided · ●
- Parse an invoice referenceTrack 2 · Strings as dataChallenge · ●●
- Fix the mailing-list name cleanerTrack 2 · Strings as dataDebugging · ●●
- Mask a phone numberTrack 2 · Strings as dataEdge cases · ●●●