Skip to main content

Python Programming


Python Programming


Advanced Python
Azure Fundametals
Introduction to Programming using Python
Laravel Bootcamp
Microsoft Azure Administrator
Python for Engineers and Scientists


Mark Badham


Python is a popular and easy-to-learn language with applications in Data Science, Engineering, Mathematics, Software development and more. Python is a very high-level object-oriented programming language which is used extensively as a web programming language, and cross-platform graphical user interface. It is also a scripting language for system administration, GIS packages and engineering software. Python is relatively easy to learn and eliminates much of the boilerplate code that many comparable languages require. Python allows the programmer to choose between programming paradigms: imperative and object oriented, procedural and functional.

This course covers the Python programming language from first principles to advanced concepts in functional programming and object-oriented design. This course is a great option for anyone who needs to gain a broad understanding of Python and gain real-world programming skills.


Delivery Methods

Leading Training is focusing on providing virtual training courses for the foreseeable future and will only consider in-person and classroom training on request, with a required minimum group size of six delegates. We remain committed to offering training that is fast, focused and effective.

Delivery Method Duration Price (excl. VAT)
Classroom 5 Days ZAR 13,750.00 Get a Quote
Live Virtual Training 5 Days ZAR 11,250.00 Get a Quote

Discounts Available

Save up to 10% by booking and paying 10 business days before the course.


Download Brochure

Information may change without notice.


Programmers, UNIX/Linux System administrators and coders who want to learn to code with Python


It is essential that you have had recent basic programming experience in any programming language (ie not just 10 years ago while at College and nothing since).  

If you don't, you must first complete our Introduction to Programming Course. This course will help you prepare for the Python Course.

Course Outline / Curriculum

  • Lexical Conventions and Syntax
    • Basic syntax
    • Variables
    • Operators
    • Division and Type Conversion
    • Augmented Assignment
    • Namespaces
  • Data types
    • Numbers
    • Strings
      • String manipulation
      • String operations
      • String methods
    • Lists
      • List notation
      • List creation shortcuts
      • Operations on lists
      • List Attributes
      • Combining lists
      • list slices
      • Comparing lists
      • Sorting lists
      • List methods
  • Dictionaries
    • Dictionary notation
    • Operations on Dictionaries
    • Combining two Dictionaries
    • Deleting from dictionary
  • Sets
    • Constructing Sets
    • Membership Testing
    • Removing Items
    • Iteration Over Sets
    • Set Operations
  • Flow control
    • Loops
      • For
      • While
      • Breaking, continue, else
    • Branches
  • Functions
    • Function calls
    • Defining functions
    • Declaring Arguments
    • Default Argument Values
    • Variable-Length Argument Lists
    • Closure
    • lambda
    • Scoping
  • Functional Programming
    • List Comprehensions
    • Genereator Expressions
    • Generator functions and Yield
  • Exceptions
    • Raising exceptions
    • Catching exceptions
    • Custom Exceptions
    • Trying over and over again
    • Recovering and continuing with finally
    • Built-in exception classes
  • Input and outputModules
    • Input
      • raw_input()
      • input()
      • File Input
      • File Objects
      • Standard File Objects
      • db files
      • csv files
    • Output
  • Classes
    • Defining a Class
    • Instance Construction
    • Class Members
    • Methods
    • Invoking Methods
    • Dynamic Class Structure
    • Viewing Class Dictionaries
    • Changing Class Dictionaries
    • New Style Classes
    • Properties
    • Static Methods
    • Inheritance
    • Special Methods
    • Initialization
  • Programming Practices
    • Encapsulation
    • Doc Strings
  • Regular Expression
    • Pattern objects
    • Matching and searching
    • Match objects
    • Replacing
  • GUI Programming
    • Tkinter
  • Sockets and ThreadingDatabase Programming
    • Socket server
    • Multi threading socket server

Schedule Dates and Booking

There are currently no scheduled dates.

Please note that this course needs a minimum of 6 delegates to schedule a course. You can choose to be added to the waiting list by clicking the button below, and we will contact you when we have enough delegates interested. Should we not get enough delegates, we will refund or credit your paid booking.

Add me to the waiting list

Should you need this course urgently, the following options are available:

  1. Pay for 6 delegates (whether you have them or not) and we will schedule the course as soon as possible.
  2. If you have fewer delegates and cannot pay for 6, we can negotiate a shortened course where some of the time will be spent in blended learning - watching videos and doing tutorials and exercises with some contact time with the trainer. We would want to discuss what your core needs are so that we cover those aspects. You need to have paid for 3 delegates at least.
Submit Enquiry