5 – 9 Sept Adv Python

Python Advanced (Full-Stack Python )


Want to learn the different ways a Python App can be built? We start with an overview of the language, then develop a game using Python’s popular gaming libraries. Our second project is a Python GUI app to store and report on data. Our last app is a Web App, using Django.



This is not a beginner course – you should be at the level of Python Beginner, unless you have some programming experience -tThen you should still at some stage do our Python Beginner course.

Intended Audience

The goal of this course is to bring you up to speed with Python as quickly as possible so you can build programs that work—games, data visualizations, and web applications—while developing a foundation in programming that will serve you well for the rest of your career. Python Advanced is written for people of any age who have never programmed in Python before but is not completely freshers to programming – it is not a complete beginner’s course . If you want to learn the basics of programming, you should do our Intro to Programming first . In this course we look at the 3 most popular ways to evelop Python apps – Games, GUI-based and Web-based.


After this course you should be able to

  • In the first part of this course you’ll learn basic programming concepts you need to know to write Python programs.
    You’ll learn about different kinds of data and the ways you can store data in lists and dictionaries within your programs.
  • You’ll learn to build collections of data and work through those collections in efficient ways.
    You’ll learn to use while and if loops to test for certain conditions so you can run specific sections of code while those conditions are true and run other sections when they’re not—a technique that greatly helps to automate processes.
    You’ll learn to accept input from users to make your programs interactive and to keep your programs running as long as the user is active.
    You’ll explore how to write functions to make parts of your program reusable, so you only have to write blocks of code that perform certain actions once, which you can then use as many times as you like.
  • You’ll then extend this concept to more complicated behavior with classes, making fairly simple programs respond to a variety of situations.
  • You’ll learn to write programs that handle common errors gracefully. After working through each of these basic concepts, you’ll write a few short programs that solve some well-defined problems.
  • Finally, you’ll take your first step toward intermediate programming by learning how to write tests for your code so you can develop your programs further without worrying about introducing bugs.
  • In the first project you’ll create a Space Invaders–style shooting game called Alien Invasion, which consists of levels of increasing difficulty.
    After you’ve completed this project, you should be well on your way to being able to develop your own 2D games.
    The second project introduces you to data visualization. Data scientists aim to make sense of the vast amount of information available to them through a variety of visualization techniques.
  • You’ll work with data sets that you generate through code, data sets downloaded from online sources, and data sets your programs download automatically.
    After you’ve completed this project, you’ll be able to write programs that sift through large data sets and make visual representations of that stored information.
    In the third project you’ll build a small web application that allows you to keep a journal of ideas and concepts you’ve learned about a specific topic. You’ll be able to keep separate logs for different topics and allow others to create an account and start their own journals.
  • You’ll also learn how to deploy your project on Heroku so anyone can access it online from anywhere.

Course Material


Course Contents


Day 1

  • Python Variables and Simple Data Types
  • Lists
  • Working with Lists
  • if Statements
  • Dictionaries
  • Day 2
  • User Input and while Loops
  • Functions
  • Classes
  • Files and Exceptions,
  • Testing Your Code
Day 3
Project 1: Game Alien Invasion 
  • Building a game
    Detecting mouse events and hiding the cursor.
    Help button to display instructions on how to play.
    Modify the speed of the game as it progresses
  • Building a Spaceship That Fires Bullets
  • Watching out for Aliens!
  • Display information in textual and non-textual ways.
  • Implement a progressive scoring system
Day 4
Project 2: Data Visualization 
  • Generating Data
  • Downloading Data
  • Use APIs to write self-contained programs that automatically gather the data they need and use that data to create a visualization.
  • Use GitHub API to explore the most-starred Python projects on GitHub
  • Explore the Hacker News API
    Use the requests package to automatically issue API calls to GitHub and process the results of that call.
  • Use Pygal settings to further customize the appearance of our generated charts.
Day 5
Project 3: Web Applications 
  • Getting Started with Django
  • User Accounts
  • Give your projects a simple but professional appearance using the Bootstrap library and the django-bootstrap3 app.
    Bootstrap’s templates, Static top navbar template to create a simple look and feel.
  • Use a jumbotron to make your home page’s message stand out
    Style all the pages in your site consistently.
  • Create a Heroku account
    Tools to use to help manage the deployment process.
  • Use Git to commit the working project to a repository and push the repository to Heroku’s servers.
  • Securing your app on the live server.
  • Competency project overview

Duration and pricing

  • Full-time over 5 days (R9995 excl VAT)
  • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R10995 excl Vat)
  • Part-time over 8 Saturdays, 3 hour sessions (R10995 excl Vat)
  • Distance-learning over up to 3 months (R7995 excl Vat)


1. Upon completion of this course we will issue you with attendance certificate to certify your attendance and / or completion of the prescribed minimum examples.
2. You have the option to get the competency / academic certificate if you :
hand in a project (pre-approved) covering most of the topics in the book.


On the calendar on this page below.
If your browser doesn’t display the calendar below, please click on this link or try using Google Chrome, alternatively please enquire via our ‘Contact Us’ page.


You can download the course registration form on our home page or by clicking here


You may download a pdf copy of this page by clicking here.


Please email us

We are a member of the Python Software Foundation


image_pdfDownload as pdfimage_printPrint this page