When students complete Advanced Python, they will be able to:
- Work with multi-dimensional lists and know when to use tuples and sets to model real-world data
- Build robust programs that validate external data and handle errors gracefully
- Manipulate the filesystem programmatically from Python
- 1. Revisiting CSV Files
In the first lesson of this course, students revisit fundamental programming concepts such as working with data structures, looping, and conditional statements. They’ll also review how to read/write CSV files in Python while building an app based on the coin game Two-Up.
- 2. Reviewing APIs
In this lesson, students review how to work with 3rd-party APIs while building a Weather App which allows users to get the current weather conditions in their city. They’ll also review fundamental programming skills such as reading documentation and how to explore a new API before writing any code.
- 3. Filtering CSV Data
In this lesson, students learn how to filter large CSV datasets using Python. They’ll build a filtered CSV file from a large dataset of space mission data stretching to the dawn of the space era and then build an interactive app that explores this data in the next lesson.
- 4. Tuples & Sets
In this lesson, students learn two more fundamental Python data structures; tuples and sets. They’ll use the filtered CSV dataset they created in the previous lesson to build an interactive app exploring that dataset using tuples and sets to further process/represent the data.
- 5. Two-Dimensional Lists
In this lesson, students learn to model complex two-dimensional (2D) data using Python’s “list” data structure. The lesson’s project is to build a simple quiz app that will help them practice finding an item’s position in a 2D list.
- 6. Exception Handling
In this lesson, students learn about Exception Handling, a valuable tool to prevent programs from crashing. They’ll build an “Imposter Hunt” app (based on the game “Among Us”) where they gracefully handle invalid user data using Python’s Exception Handling mechanisms.
- 7. Basic Validations
In this lesson, students learn how to use Guard Conditions to validate that data passed into functions is correct. They’ll practice validations by creating an “RPG Character Builder” app, which focuses on validating that users enter correct data while equipping an RPG character for a fictional app.
- 8. Exploring The Filesystem
In this lesson, students learn how to explore a Linux filesystem using Python. The core lesson focuses on different techniques for navigating/reading files on a Linux filesystem, and then they’ll build an interactive filesystem explorer for homework.
- 9. Manipulating The Filesystem: Part 1
In this lesson, students continue working with a Linux filesystem while learning about Python’s `pathlib` module. They’ll build a simple Dropbox clone called Wizardbox to hone their Python file manipulation skills.
- 10. Manipulating The Filesystem: Part 2
In this lesson, students learn some more file manipulation techniques in Python while adding features to the Wizardbox app we worked on in the last lesson. They’ll learn how to prevent hackers from performing path traversal attacks and they’ll also learn how to let users create downloadable ZIP archives of folders.
- 11. Final Project: Part 1
In this lesson, students begin working on an RPG game while reviewing concepts they’ve learned throughout this course and the Python Language Track. Major concepts include when to use a dict over a tuple, how to model a game board with 2D lists, and how to represent “nothingness” using Python’s `None` object.
- 12. Final Project: Part 2
In the final lesson of this course, students finish their RPG game which they began in the previous class. To complete this assignment, they review functions, loops, conditional statements, Boolean values, and many other concepts they’ve learned throughout this course and the Python Language Track.
#1 Most Comprehensive Program for Your Student’s Success!
The CodeWizardsHQ program comes with everything your child needs to be successful in learning to code.
All of the below are included at no extra cost.
Course Duration & Time Commitment
All courses are 12 weeks long. A Wizard will receive a certification for their achievement at the end of the course.
Expect a weekly time commitment of 2-3 hours. 55 minutes of class time, plus 1-2 hours of practice time, with instructor support throughout, including weekends.
Our goal is to make all our students successful. If your child is not happy with our program, please notify us within the first four class sessions and you will receive a full refund. See refund details.