0% found this document useful (0 votes)
3 views14 pages

Python Programming for Young Programmes

The document outlines a comprehensive 8-week curriculum for teaching computer science fundamentals and Python programming to students. It includes topics such as hardware vs software, algorithms, variables, data types, conditional selection, loops, functions, and game development using Pygame. Each week builds upon the previous one, culminating in the creation of interactive programs and games, specifically a 'Catch the Apple' game.

Uploaded by

komchilinn
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views14 pages

Python Programming for Young Programmes

The document outlines a comprehensive 8-week curriculum for teaching computer science fundamentals and Python programming to students. It includes topics such as hardware vs software, algorithms, variables, data types, conditional selection, loops, functions, and game development using Pygame. Each week builds upon the previous one, culminating in the creation of interactive programs and games, specifically a 'Catch the Apple' game.

Uploaded by

komchilinn
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Week 1 – Computer Science Fundamentals

By the end of this week, students will be able to:

●​ Explain the difference between hardware and software.


●​ Describe how computers use electricity to process information.
●​ Understand that computers only understand binary (0 and 1).
●​ Explain why programming languages exist.
●​ Understand what an algorithm is.
●​ Understand the performance of an algorithm
●​ Create simple algorithms without writing code.

Day 1 – How Computers Work


-Students will discover how computers work internally and understand why programming
languages like Python are necessary.

●​ Course Introduction
●​ Computers Use Electricity
●​ How CPU works with electrical instructions
●​ Hardware vs Software
●​ Software instruct CPU
●​ Binary numbers
●​ Why programming language exist
●​ Assembly language
●​ High-Level Programming Languages
●​ Why python

Day 2 – Introduction to Algorithms


-Students will understand that every program has a solution called an algorithm.

●​ A quick review
●​ What is an Algorithm?
●​ Algorithms in daily life
●​ Why Algorithms Matter in computing
●​ Time complexity and space complexity
●​ Unplugged Activities Based on [Link]

Week 2 – Getting started with Python Using Pictoblox


By the end of this week, students will be able to:
●​ Understand that programming languages are used to write instructions for computers.
●​ Set up and navigate the PictoBlox programming environment.
●​ Identify the main parts of the PictoBlox interface.
●​ Understand what a sprite is
●​ Use the say and think commands to communicate with a sprite.
●​ Understand the purpose of arguments in programming.
●​ Understand what variables are and why programmers use them.
●​ Create, assign, and use variables to store information.
●​ Apply variable naming rules and update (overwrite) variable values.
●​ Create a simple self-introduction and personalized programs using variables.

Day3 : Introduction to Python Programming with PictoBlox


-Students will begin writing their first Python programs using PictoBlox and understand that
programming languages are used to write instructions for computers.

●​ From Algorithms to Computer Programs


●​ Downloading and Installing PictoBlox
●​ Exploring the PictoBlox Interface
●​ What is a Sprite?
●​ Creating Your First Sprite Program
●​ Sprite Says "Hello, World!"
●​ Sprite Says "Hello, World!" for 2 Seconds
●​ Sprite Thinks "Hello, World!"
●​ Sprite Thinks "Hello, World!" for 2 Seconds
●​ Introduction to Arguments and Parameters
●​ Activity: Create a Sprite Self-Introduction
●​ Lesson Review and Q&A

Day 4: Introduction to Variables


-Students will understand what variables are, why they are used in programming, and how to
store and use information in Python using PictoBlox.

●​ Review: Arguments (Parameters)


●​ What is a Variable?
●​ Variable Declaration and Assignment Syntax
●​ Variables as Containers for Storing Data
●​ Understanding Variables (Left Side) and Values (Right Side)
●​ Storing and Displaying Text (Strings)
●​ Using Variables in Sprite Messages
●​ Variable Naming Rules
●​ Overwriting Variable Values
●​ Avoid Creating Unnecessary Variables
●​ Activity: Create Favourite Colour and Favourite Song Variables
●​ Lesson Review and Q&A

Week 3 : Data types


By the end of this week, students will be able to:

●​ Understand how Python programs interact with users through input and output.
●​ Identify common input and output devices.
●​ Use the input() function to receive information from users.
●​ Store user input in variables.
●​ Combine text and variables using string concatenation.
●​ Understand that Python stores different kinds of information using data types.
●​ Identify common Python data types using the type() function.
●​ Perform calculations using arithmetic operators.
●​ Convert values between different data types using type conversion.

Day 5: Input and Output


-Students will learn how Python programs interact with users by receiving input and displaying
output.

●​ Review: Variables
●​ What is Input?
●​ What is Output?
●​ Common Input Devices
●​ Common Output Devices
●​ The input() Function
●​ Understanding the Argument of input()
●​ Storing User Input in Variables
●​ String Concatenation with the + Operator
●​ Concatenating Text with String Variables
●​ Why Concatenation Works with Strings
●​ Greeting the User Using Their Name
●​ Activity: Ask the User for Their Name, Favourite Colour, and Favourite Song

Day 6: Data Types and Arithmetic Operators


-Students will understand that different kinds of data have different data types, learn how to
identify and convert data types, and use arithmetic operators to create a simple calculator.

●​ Review: Input, Output, and Variables


●​ What is Data?
●​ Why Do Different Data Types Exist?
●​ How Data Types Help Computers Process Information
●​ Variables Store Different Types of Values
●​ Introduction to Python Data Types
●​ Using the type() Function
●​ The Seven Arithmetic Operators
●​ Understanding the str + int Error
●​ Type Conversion (Casting)
●​ Activity: Build a Simple Calculator

Week 4 : Conditional Selection


By the end of this week, students will be able to:

●​ Understand that computers can make decisions by checking conditions.


●​ Understand the purpose of the Boolean data type (True and False) in programming.
●​ Use conditional statements (if, else, and elif) to control program flow.
●​ Compare values using relational operators.
●​ Understand that comparison results produce Boolean values.
●​ Combine multiple conditions using logical operators (and and or).
●​ Create interactive programs that make decisions based on user input.

Day 7: Conditional Selection

- Students will learn how Python makes decisions by using Boolean values and conditional
statements.

●​ Review: Data Types and Arithmetic Operators


●​ Data Types Quiz (Blooket)
●​ Introduction to the Boolean Data Type (True and False)
●​ Unplugged Activity: Conditions ([Link])
●​ What is Conditional Selection?
●​ Making Decisions with Everyday "If" Sentences
●​ Using Boolean Values with Conditional Statements
●​ Lesson Review and Q&A

Day 8: Relational and Logical Operators

-Students will learn how computers compare information and combine multiple conditions to
make smarter decisions using relational and logical operators.

●​ Review: Conditional Selection (if, else, elif)


●​ Introduction to Relational Operators
●​ Comparing Values Using Relational Operators
●​ Understanding Comparison Results as Boolean Values (True / False)
●​ Activity 1: Compare Two Numbers
●​ Activity 2: Age Checker Program
●​ Introduction to Logical Operators
●​ Why Do We Need Multiple Conditions?
●​ Real-life Example: Two Light Bulbs and Conditions
●​ Understanding and and or
●​ Connecting Logical Operators with Boolean Values
●​ Introduction to Input A and Input B
●​ Simple Concept of Logic Gates :AND Gate,OR Gate
●​ Activity 3: Security Door System
●​ Activity 4: Pet Feeding System
●​ Challenge Activity: Create Your Own Conditional Program
●​ Student Presentation
●​ Lesson Review and Q&A

Week 5: Loop
By the end of this week, students will be able to:

●​ Understand why programmers use lists to store and organize multiple values.
●​ Create and use Python lists to manage collections of data.
●​ Understand list syntax and store different types of data in a list.
●​ Use list functions such as append(), insert(), remove(), pop(), and len().
●​ Understand why loops are needed to repeat instructions efficiently.
●​ Identify the two main types of loops: counted loops and conditional loops.
●​ Use Python's for loop to repeat instructions a specific number of times.
●​ Understand the purpose of the range() function and control the number of iterations.

Day 9: Introduction to Lists

-Students will learn how to store multiple values in a single variable using Python lists.

●​ Review: Logical Operator


●​ Why Do We Need Lists with real life examples?
●​ What is a List?
●​ Understanding List Syntax
●​ Different Data Types in a List
●​ Accessing List Items Using Indexes
●​ Positive Indexes
●​ Adding Items to a List (append())
●​ Inserting Items into a List (insert())
●​ Removing Items from a List (remove())
●​ Removing Items by Index (pop())
●​ Finding the Length of a List (len())
●​ Displaying List Items
●​ Activity: Create a Favourite Things List
●​ Activity: Ordering food project
●​ Lesson Review and Q&A

Day 10: Introduction to Loops

-Students will learn why loops are important and use Python's for loop to repeat instructions
efficiently.

●​ Review: Lists
●​ Why Do We Need Loops?
●​ Activity: Writing the Same Sentence on Paper
●​ What is a Loop?
●​ Two Types of Loops
●​ Introduction to the for Loop
●​ Number of Iterations
●​ Understanding the range() Function
●​ Displaying Numbers with a for Loop
●​ Activity: Multiplication Table
●​ Challenge Activity: Create Your Own Repetition Program
●​ Lesson Review and Q&A

Week 6 : Creating Catch the Apple game

By the end of the week, students will be able to:

●​ Understand the difference between counted loops (for) and conditional loops (while).
●​ Use Python's while loop to repeat instructions while a condition is true.
●​ Understand how infinite loops happen and how to stop loops using break.
●​ Combine lists and loops to process and display multiple items efficiently.
●​ Apply loops, variables, conditions, and user input to create interactive programs.
●​ Use variables to manage game information such as scores and game states.
●​ Use random values to create dynamic game behavior.
●​ Create and customize a simple Catch the Apple game using programming concepts
learned throughout the course.

Day 11: Conditional Loops (while Loop)


-Students will learn how to repeat instructions until a condition changes by using Python's while
loop.

●​ Review: What is a Loop?


●​ Review: Two Types of Loops
●​ Why Do We Need a Conditional Loop?
●​ Unplugged Activity: "Clap Your Hands"
●​ Unplugged Activity: "Spin Until I Say Stop"
●​ Real-World Examples of Conditional Loops
●​ Introduction to the while Loop
●​ Understanding while Loop Syntax
●​ Stopping a Loop with break
●​ Activity 1: Security Key (Password Checker)
●​ Activity 2: Guess the Number Game
●​ Using Lists with Loops
●​ Looping Through Every Item in a List
●​ Activity 3: Favourite Movies
●​ Challenge Activity: Create Your Own while Loop Program
●​ Lesson Review and Q&A

Day 12: Build Your First Game – Catch the Apple

-Students will apply variables, conditional statements, loops, and random values to build a
simple "Catch the Apple" game using PictoBlox.

●​ Review: Lists and Python Fundamentals


●​ Understanding the Goal of the Game
●​ Setting Up the Stage and Sprites
●​ Adding the Basket and Apple Sprites
●​ Positioning Sprites
●​ Making the Basket Move with the Keyboard
●​ Using a Forever Loop
●​ Making the Apple Fall
●​ Resetting the Apple to the Top
●​ Using Random Positions for the Apple
●​ Detecting Collisions Between the Basket and Apple
●​ Increasing and displaying the Score
●​ Adding Sound Effects
●​ Adjusting the Falling Speed
●​ Activity: Customize Your Game

Week 7: Functions
By the end of the week, students will be able to:

●​ Understand why functions are useful in programming.


●​ Explain how functions help programmers organize and reuse code.
●​ Create and call their own Python functions.
●​ Understand the difference between built-in functions and user-defined functions.
●​ Use parameters to pass information into functions.
●​ Return values from functions and use the results in programs.

Day 13: Introduction to Python Functions

-Students will learn how functions work and how they help programmers organize instructions
into reusable blocks of code.

●​ Review: Variables, Conditions, and Loops


●​ Why Do We Need Functions?
●​ Real-Life Examples of Functions
●​ What is a Function?
●​ Benefits of Using Functions
●​ Introduction to Built-in Functions
●​ Understanding Function Syntax:
●​ Calling a Function
●​ Executing Instructions Inside a Function
●​ Activity 1: Create a Greeting Function
●​ Create a function that displays a greeting message.
●​ Activity 2: Create a Favourite Things Function
●​ Challenge Activity: Create your own function to perform a simple task.
●​ Lesson Review and Q&A

Day 14: Functions with Parameters and Return Values

-Students will learn how to make functions more flexible by using parameters and returning
values.

●​ Review: Creating and Calling Functions


●​ Why Do Functions Need Parameters?
●​ Introduction to Parameters and Arguments
●​ Passing information into functions
●​ Using variables as arguments
●​ Return functions and variables
●​ Activity 1: Personalized Greeting Program
●​ Activity 2: Simple Calculator Using Functions
●​ Activity: Creating Functions for the catch the apple game.
●​ Lesson Review and Q&A

Week 8: Introduction to Pygame


By the end of this week, students will be able to:

●​ Understand what Pygame is and why it is used for game development.


●​ Create a basic Pygame project and game window.
●​ Understand the coordinate system used in computer games.
●​ Draw simple shapes and colors using Pygame.
●​ Understand the purpose of the game loop.
●​ Update and refresh the game screen continuously.
●​ Create simple game scenes using basic Pygame commands.

Day 15: Getting Started with Pygame


-Students will learn the basic structure of Pygame programs and create their first game window.

●​ Review: Python Fundamentals


●​ Introduction to Pygame
●​ What is Pygame?
●​ Why Do We Use Pygame for Game Development?
●​ Examples of Games Created with Pygame
●​ Installing and Setting Up Pygame
●​ Importing the Pygame Library
●​ Understanding the Basic Structure of a Pygame Program
●​ Creating a Game Window
●​ Setting Screen Width and Height
●​ Setting Game Window Title
●​ Running the First Pygame Program
●​ Understanding Screen Coordinates
●​ X Position and Y Position
●​ The Origin Point (0,0)
●​ Activity: Create Your First Pygame Window
●​ Challenge Activity: Design Your Own Game Window
●​ Lesson Review and Q&A
Day 16: Drawing and Game Loop

-Students will learn how games display objects continuously by using drawing commands and
the game loop.

●​ Review: Pygame Window and Coordinates


●​ What is Drawing in Games?
●​ Introduction to RGB Colors
●​ Creating Colors Using RGB Values
●​ Drawing Basic Shapes:Rectangle, Circle,Line
●​ Using Shapes as Game Objects
●​ Introduction to the Game Loop
●​ Why Do Games Need Loops?
●​ Understanding Continuous Game Updates
●​ Creating a Running Game Loop
●​ Updating the Screen
●​ Refreshing the Display
●​ Understanding Frames in Games
●​ Activity: Create a Simple Game Scene
●​ Challenge Activity: Create Your Own Game Background
●​ Lesson Review and Q&A

Week 9: Working with Sprites

By the end of this week, students will be able to:

●​ Understand what sprites are and why they are important in game development.
●​ Create and manage game objects using Pygame sprites.
●​ Load and display images in a game.
●​ Control game objects using keyboard input.
●​ Move sprites smoothly using variables.
●​ Understand how the game loop updates object positions.
●​ Keep player objects inside the game window.

Day 17: Introduction to Sprites


-Students will learn how sprites are used to create and manage objects in a game.

●​ Review: Pygame Window, Coordinates, and Game Loop


●​ What is a Sprite?
●​ Why Do We Need Sprites in Games?
●​ Understanding Sprite Objects
●​ Creating a Sprite Class
●​ Understanding Sprite Properties:Image
●​ ,Rectangle,Position
●​ Loading Images into Pygame
●​ Displaying Images on the Screen
●​ Changing Sprite Position Using Coordinates
●​ Updating Sprite Position in the Game Loop
●​ Activity: Create a Player Sprite
●​ Activity:Create a simple game scene with multiple sprites.
●​ Lesson Review and Q&A

Day 18: Player Movement and Keyboard Control

-Students will learn how to control sprites using keyboard input and create interactive game
objects.

●​ Review: Sprites and Game Loop


●​ Introduction to User Input in Games
●​ Keyboard Events in Pygame
●​ Using Variables for Movement Speed
●​ Changing Sprite Position During the Game Loop
●​ Understanding Continuous Movement
●​ Keeping Player Inside the Screen Boundary
●​ Activity: Create a Controllable Player Character
●​ Lesson Review and Q&A

Week 10: Game Objects and Collision Detection

By the end of this week, students will be able to:

●​ Understand how games use multiple objects and sprites together.


●​ Create and manage multiple sprites in a game.
●​ Understand how collision detection works in games.
●​ Detect when two game objects touch each other.
●​ Use conditions to create game interactions.
●​ Create simple game mechanics such as collecting items and increasing scores.

Day 19: Creating Multiple Game Objects

-Students will learn how to create, organize, and manage different objects in a game.

●​ Review: Sprites and Player Movement


●​ Why Do Games Need Multiple Objects?
●​ Creating Different Sprite Objects
●​ Understanding Sprite Groups
●​ Why Do We Use Sprite Groups?
●​ Adding Sprites into Groups
●​ Updating Multiple Sprites Together
●​ Activity: Create a Simple Game Scene
●​ Challenge Activity:Create your own mini game scene with different sprites.
●​ Lesson Review and Q&A

Day 20: Collision Detection and Game Interaction

-Students will learn how games detect contact between objects and create actions based on
collisions.

●​ Review: Sprites and Sprite Groups


●​ What is Collision Detection?
●​ Real-Life Examples of Collision
●​ Detecting Collision Between Sprites
●​ Using Collision Detection Functions
●​ Connecting Collision with Conditions
●​ Creating Game Actions After Collision
●​ Activity 1: Collecting Coins Game
●​ Activity 2: Player and Enemy Collision
●​ Challenge Activity: Create your own collision-based game feature.
●​ Lesson Review and Q&A

Week 11: Creating a Shooting Game


By the end of this week, students will be able to:

●​ Understand how shooting games work using sprites and game logic.
●​ Create bullets and control their movement.
●​ Create enemy objects and manage multiple enemies.
●​ Use loops to update game objects continuously.
●​ Use collision detection to create shooting interactions.
●​ Create a basic shooting game with a player, enemies, and bullets.

Day 21: Creating Bullets and Shooting System

-Students will learn how to create bullets and build a shooting system for a game.

●​ Game Objects in a Shooting Game:Player,Bullet,Enemy


●​ Creating a Bullet Sprite
●​ Creating Bullet Movement
●​ Moving Bullets Across the Screen
●​ Using Variables to Control Bullet Speed
●​ Creating Keyboard Controls for Shooting
●​ Understanding Shooting Events
●​ Activity: Create a Simple Shooting System
●​ Lesson Review and Q&A

Day 22: Creating Enemies and Enemy Movement

-Students will learn how to create enemies and add movement to make a shooting game more
interesting.

●​ Review: Bullets and Sprite Groups


●​ Creating Enemy Sprites
●​ Adding Multiple Enemies
●​ Using Sprite Groups for Enemies
●​ Placing Enemies at Different Positions
●​ Making Enemies Move
●​ Creating Different Enemy Movement Patterns
●​ Using Variables for Enemy Speed
●​ Activity: Create an Enemy Attack System
●​ Lesson Review and Q&A

You might also like