Python Programming Course Gauteng

Learn the most popular programming language

Python Programming Course Gauteng Overview

Python Fundamentals

In this Python Programming Course in Gauteng you will learn the complete Python specification. You will learn everything you can do with Python by starting with the fundamentals of Python Programming Basics all the way through to advanced Python Development Techniques.

Python is the most sought after skill in the software development industry today and the world’s most popular programming language. In the forever growing software development industry, it is essential to know how to use Python to enhance your applications. It is an essential skill for any developer.

Python Programming Course Pretoria Johannesburg

Our instructor-led hands-on Python training course will introduce you to the Python 3 language and syntax to get you developing working applications using best practices.

You’ll learn you how to apply object-oriented programming, functional programming and scripting techniques in your software applications.

Our Python classes are available as part of a wider training programme or as a standalone course.

This course also serves as a solid foundation from which to move into web development, data analytics and scientific programming, game scripting, systems administration and much more – Python 3 is an incredibly versatile language.

This Python Course will cover everything you need to know on how to use it for every day tasks. You will also get a brief introduction to Python Frameworks, API’s and more advanced Python Techniques.

The best Practical Python Programming Course available in South Africa – as voted by 100’s of students over the last 12 years.

09:00am - 14:00pm

Who is this course for?

This Python Course is aimed at developers who want to learn the latest Python Programming conventions and techniques. This is also a solid Python Introduction course for anyone wanting to become a software developer, data analyst and scientific programming, game developer, systems administrator and much more. This course is for anyone wanting to learn the power behind Python Programming.

Assumed Knowledge

For this Python Course in Gauteng we will assume working knowledge of Windows or Mac systems. No previous Python Programming experience needed.

What you will Learn

  • What is Python
  • Why use Python
  • What we use Python for
  • Python Syntax
  • Python Flow Control
  • Python Functions
  • Python Containers
  • Python Data Types
  • Python Lists & Dictionaries
  • Python Objects
  • Python Loops
  • File handling in Python
  • Python Frameworks
  • API’s
  • And Much More

Introduction to Python

  • Python Background
  • Python Versions
  • The Language
  • Execution Model
  • Running Python Programs
  • REPL, python command, script, IDE
  • Useful Online Resources
  • Obtaining Python
  • IDEs

Python Built-In Types

  • Interactive Hello World
  • Variables & Types
  • Naming Conventions
  • Comments
  • Strings
  • Numbers
  • Boolean Values
  • None Value

Flow of Control in Python

  • Comparison Operators
  • If statement
  • Using else and elif
  • Nesting if statements
  • Logical Operators
  • If expressions
  • While Loops
  • For loops
  • Break and Continue

Python Containers

  • Introduce collection types
  • Tuples
  • Lists
  • Sets
  • Dictionaries
  • Collection constructor functions


  • Defining Functions
  • Zero, single and multiple parameter options
  • Default parameter values and named parameters
  • Returning values
  • Arbitrary parameter lists
  • Positional and Keyword /named parameters
  • Docstring
  • Anonymous Functions / Lambdas

Objects and Classes

  • Everything is an Object
  • What do classes do?
  • Class Terminology
  • Defining user defined classes
  • Instantiating Objects from Classes
  • Class Comments
  • Defining behaviour
  • Class side methods and Behaviour
  • Static methods
  • __new__ versus __init__


  • What is Inheritance?
  • Inheritance Terminology
  • Purpose of a Subclass
  • Declaring Inheritance in Python
  • The Class object and Inheritance
  • Overriding and Extending Methods
  • Inheritance Naming Conventions
  • Multiple Inheritance

Operator Overloading

  • Why have Operator Overloading?
  • Why not have Operator Overloading?
  • Defining Operators
  • Numerical Operators
  • Comparison Operators
  • Logical Operators

Modules, packages and Anaconda

  • Modules
  • Python Modules
  • Importing Modules
  • Using from with import
  • Further Importing Techniques
  • Module Properties
  • Module Search Path
  • Pip, Conda and Anaconda

Exception Handling

  • Errors & Exceptions
  • Exception types in Python
  • Exception Handling
  • try-except blocks
  • default Exception Handler
  • else Clause
  • finally block
  • Raising an Exception / Error
  • Defining New Exceptions / Errors
  • Chained Exceptions


  • Implicit Contracts
  • Duck Typing
  • Protocols
  • Context Manager Protocol
  • Polymorphism in Python
  • Monkey Patching

Iterators & Iterables

  • Iterables
  • Iterators
  • Iteration Related Methods
  • Iterable Events Class
  • Using Events class with a for loop
  • The itertools module

Generators and Coroutines

  • Generators
  • Generator Functions
  • Generator with a for loop
  • When do yield statements execute?
  • An event number Generator
  • Nesting generator Functions
  • Coroutines
  • Coroutine Example

Python Properties

  • Python Attributes
  • Setter and getter style methods
  • Public Interface to Properties
  • Python Properties
  • More Concise Property Definitions

Testing PyTest and Mocking

  • Test Driven Development
  • What is pytest?
  • Writing tests
  • Organising Tests
  • Test Fixtures
  • Parameterized tests
  • Testing for Exceptions
  • Ignoring Tests
  • Mocking
  • Mocking with pytest-mock

Files and Paths

  • Obtaining a reference to a file
  • File Access Modes
  • Reading Files
  • File Contents Iteration
  • Writing Data to Files
  • Using files and with statements
  • The fileinput module
  • Renaming and Deleting files
  • Random Access Files
  • Directories
  • Temporary Files & Directories
  • Paths
Python Course in Johannesburg Pretoria


  • You can always sit in for the same Python Programming Course in Gauteng at any time within a year for free. We make sure you understand everything once you are done with the course.
  • All software is included.
  • Our courses are practical – The best way to learn.
  • Get a great Python Programming Course in Gauteng.
  • Our Tutors share their 18 years experience and best practices, something you won’t get anywhere else.

Supplied Course Materials

Python Programming Course MaterialsFor this Python Programming Course in Gauteng we supply detailed course notes and reference text. We provide sufficient supporting material so that you can return to your work place with sufficient confidence to permit further learning. You also get all course activity and files on a DVD disc at the end of your JavaScript Course.

Ongoing Student Support

Python Course SupportThere is nothing worse than leaving a course and feeling left on your own. We like to ensure our customers have all the support and backup they need which includes unlimited support by phone or email. You also get lifetime support through our Resource Centre. You can also sit in for the complete Python Course in Johannesburg for free if you feel you need a refresher.

We look after our students:

We provide water, coffee & tea throughout the day. You can even have your coffee at your desk.

You also get

  • A start to a great portfolio
  • A great Python Programming Course in Johannesburg / Pretoria
  • A great collection of Python Programming Books
  • A certificate of completion.
  • Access to our resource website with free stock images, tutorials and code examples.
Python Programming Short Course South Africa
Share with a Friend

Start typing and press Enter to search

Pin It on Pinterest