(Py2001) Computational Thinking with Python

Course Description

Computational Thinking with Python rides on our core Python Coding course to introduce computational thinking to learners.

For students who have completed (Py2000) Everyone can code with Python, or have similar Python coding experiences, this course introduces the core concepts of Computational Thinking, namely Decomposition, Pattern Recognition, Abstraction and Algorithm.

Through various challenging activities in Mathematics, text analysis and turtle graphic, students learn valuable computational thinking skills which are transferable in other domains and subjects.

Who this course is for

This course is designed with challenge-based activities and hosted on Google’s online learning platform. It is suitable for:
1. Everyone who knows any programming and loves puzzles and problem solving
2. Beginner programmers looking get more creative and tackle open-ended problems
3. O-Level Computing students, looking to enhance their python coding skills
4. Teachers / Tutors looking to find an ideal learning sequence to teach Python programming

Course Outline
Session 1 – Recap / Using Modules Session 2 – Decomposing a Complex Problem using Functions
– Recapitulation – The Basics
– The ways (Zen) of Python
– The Import Statement
– Dates / Time Module
– Functions in Python
– Local vs global variables
– Recursion
– Applications – Fibonacci, Factorial
Session 3 – Algorithm with Mathematics Challenges Session 4 – Pattern Recognition with Text Analysis Challenges
– Maths and Random Modules
– Itertools Module
– Permutation and Combination
– Applications – Prime Numbers, Lowest Common Multiples
– String Methods
– Indexing, Slicing and List Comprehension
– Application: Word Count Challenge
Session 5 – Turtle Graphics Challenges
– Storyboarding – Turtle Module
– Geometric Shape Challenges
– Polygons Challenges