









Home / Non-Accredited / Microsoft Office & Computer Skills / Python Programming Training (5 days)
Quick Look Course Summary:Python Programming Training (5 days)
-
Length: 5 day(s)
-
Price (at your venue): 1 Person R 34,091 EX VAT 3 Person R 22,022 EX VAT 10 Person R 14,427 EX VAT
-
Certification Type:Non-Accredited
-
Locations & Venues: Off-site or in-house. We train in all major city centres throughout South Africa.

Get Free & personalised
Training Advice
Python Programming Training (5 days)
Delegates go from their first line of code to structured, object-oriented Python programs that automate real business tasks.
Python is the language most organisations reach for when they want to automate repetitive work, process data or connect systems. This five-day Python programming course takes delegates from their first line of code to structured, object-oriented programs – and shows them how to apply the language to everyday business problems.
Days one to three build the foundations: installing Python and choosing tools, data types and variables, strings and numbers, decisions and loops, lists, tuples, sets and dictionaries, functions, modules, error handling and files. Day four is devoted to object-oriented programming: classes, inheritance, polymorphism, abstraction and encapsulation. Day five puts it all to work with pandas for data, automation of files and Excel workbooks, calling web APIs, and testing and debugging, ending with a capstone project.
Every session is hands-on, with a short exercise after each topic and a practical task at the end of each day. No programming experience is needed.
Why this course
For your organisation
- Staff who can automate repetitive data and file handling
- Faster, more reliable processing of reports and system exports
- An internal foundation for data analysis and automation projects
- Code written to a consistent, maintainable standard
For your delegates
- A working knowledge of Python from first principles
- Object-oriented skills that carry over to other languages
- Practical scripts for Excel files, folders and web data
- A capstone project that shows what you can do
What delegates will be able to do
- Install Python, set up a virtual environment and run scripts from an editor and the terminal
- Work with numbers, strings, lists, tuples, sets and dictionaries
- Control program flow with conditions, loops and comprehensions
- Write reusable functions and organise code into modules and packages
- Handle exceptions and read and write text, CSV and JSON files
- Design classes using inheritance, polymorphism, abstraction and encapsulation
- Load, filter, group and summarise data with pandas and write the results to Excel
- Call a web API, parse the JSON response and keep credentials safe
- Debug, log and unit-test code, and follow PEP 8 style
Who should attend
Beginners who want a working knowledge of Python, analysts and finance staff who want to automate data work, IT support staff, engineers, and developers who already program in another language. Being comfortable with a computer and with files and folders is enough; no programming experience is required.
Course outline
Day 1 – Getting started with Python
Introduction to Python
- What Python is and where it is used: automation, data analysis, web and scripting
- Where the language came from and why it is named after Monty Python
- Python 3 and its release cycle
- How Python runs code: the interpreter, scripts and the interactive shell
Installing Python and choosing tools
- Installing from python.org or using a distribution such as Anaconda
- Editors and IDEs: VS Code, PyCharm, IDLE and Jupyter notebooks
- Running scripts from the terminal
- Virtual environments and installing packages with pip
Your first programs
- print, input and comments
- Syntax and indentation
- Writing, saving and running a script
- Reading error messages and tracebacks
Data types and variables
- Variables and naming rules
- Integers, floats, booleans and None
- Checking and converting types
- Dynamic typing and PEP 8 naming conventions
Working with numbers
- Arithmetic operators, floor division, modulus and powers
- Operator precedence
- The math module and rounding
- Decimal for money calculations
Manipulating strings
- String literals, escape characters and multi-line strings
- Indexing and slicing
- String methods such as upper, strip, split, join, replace and find
- Formatting output with f-strings
Day 2 – Program flow and data structures
Program flow control
- Comparison and logical operators
- if, elif and else
- Nested conditions
- The match statement for multiple cases
Loops
- for loops and range
- while loops
- break, continue and else on loops
- Looping with enumerate and zip
Lists and tuples
- Creating, indexing and slicing lists
- List methods: append, extend, insert, remove and sort
- Tuples and unpacking
- Mutable and immutable objects
Sets and dictionaries
- Sets and set operations: union, intersection and difference
- Dictionaries: keys, values and items
- Dictionary methods and looping over dictionaries
- Nested data structures
Comprehensions and built-in functions
- List, set and dictionary comprehensions
- Generator expressions
- Built-ins: len, sum, min, max, sorted, any and all
- Practical exercise: processing a sales list
Day 3 – Functions, modules, errors and files
Functions
- Defining functions with parameters and return values
- Default and keyword arguments
- *args and **kwargs
- Docstrings and type hints
Scope and functional tools
- Local and global scope
- Lambda functions
- map, filter and sorting with a key
- An introduction to recursion
Modules and packages
- import statements and creating your own modules
- A tour of the standard library: os, sys, datetime, random and pathlib
- Organising code into packages
- Third-party packages and requirements files
Exception handling
- Common exceptions and what they mean
- try, except, else and finally
- Raising exceptions
- Writing custom exceptions
Working with files
- Reading and writing text files with the with statement
- CSV files with the csv module
- JSON data
- Working with paths using pathlib
Day 4 – Object-oriented programming
The object-oriented approach
- Why object-oriented programming
- Classes and objects
- Attributes and methods
- The __init__ method and self
Defining classes
- Instance and class attributes
- Class methods and static methods
- Special methods: __str__, __repr__ and __eq__
- Data classes
Inheritance and polymorphism
- Base and derived classes
- super() and method overriding
- Polymorphism and duck typing
- Multiple inheritance and when to avoid it
Abstraction and encapsulation
- Abstract base classes with the abc module
- Public, protected and private naming
- Properties: getters and setters
- Composition compared with inheritance
Object-oriented workshop
- Designing a small class-based application, such as stock control or invoicing
- Writing and testing the classes
- Code review and refactoring
Day 5 – Python at work
Working with data in pandas
- Series and DataFrames
- Reading CSV and Excel files
- Filtering, sorting, grouping and summarising
- Writing results back to Excel
Automating everyday tasks
- Automating files and folders
- Dates and times with datetime
- Regular expressions basics
- Reading and writing Excel workbooks with openpyxl
Web data and APIs
- How HTTP requests work
- Calling a web API with the requests library
- Parsing JSON responses
- Keeping credentials safe
Testing, debugging and code quality
- Using the debugger in your editor
- Logging instead of print
- Unit tests with unittest and pytest
- PEP 8, linters and formatters
Capstone project
- Building a small end-to-end Python program
- Presenting and reviewing the solution
- Next steps: data analysis, web development and automation
How it is delivered
Five days, 08:30-16:00. In person at your offices anywhere in South Africa, at a BOTI venue, or live online. One delegate or a group of up to 20; every delegate codes hands-on throughout. Laptops with the software can be supplied on request; Python and the editors used are free to install. Course notes, exercise files and the capstone brief included. We deliver it at your offices in Johannesburg, Pretoria, Durban, Cape Town and anywhere else in South Africa, at a BOTI venue in Johannesburg, or live online for teams in different places.
What our clients say
★★★★★ 4.8 on Google from 770+ reviews · word-for-word quotes from signed letters of reference, from clients on this and/or related BOTI courses
“The training was very informative and practical, leaving our employees feeling confident in their ability to leverage Excel more effectively.”
“The training courses were efficiently scheduled and planned around our timetable. We were impressed by the quality of training. I look forward to working with Business Optimization Training Institute in the future.”
“We were particularly impressed by the quality of facilitation and the practical relevance of the content presented. The programme was delivered with professionalism, clarity, and a strong emphasis on real-world application.”
Frequently asked questions
Do delegates need programming experience?
No. The course starts from the first line of code. Delegates who already program in another language move quickly through the early days and get the most from days four and five.
Is there a shorter version?
Yes. The two-day Python short course covers the core language – data types, data structures, conditions, loops, functions, classes, files and exceptions – without the object-oriented workshop, pandas, automation, APIs and capstone project.
Which version of Python is used?
Current Python 3, with VS Code or PyCharm as the editor and Jupyter notebooks for the data work.
Can you run this course at our offices?
Yes – on-site anywhere in South Africa, at a BOTI venue or live online, for one delegate up to groups of about 20. Laptops with the software can be supplied on request.
Is it accredited?
No – it is a non-accredited short course and delegates receive a BOTI certificate of attendance.
Can you run this course in Johannesburg, Cape Town or Durban?
Yes. We train on site at your offices in Johannesburg, Pretoria, Durban, Cape Town and across South Africa, at a BOTI venue in Johannesburg, or live online so a team spread over several offices can attend together.
Related courses
Get your price – the more delegates, the less each pays
Change the options to see your price per person, then email yourself the quote and course outline.
Email me this quote and course outline
We email the course outline and your price straight away - free and no obligation.
- Course: Python Programming Training (5 days)
- Length: 5 day(s)
- Delegates: 1
- Price:
Contact us now – we reply within 15 minutes during office hours
Monday to Friday, 08:00–17:00. After hours, we reply on the next working day – or call 011 882 8853.