Python 3 Programming Training in South Africa

  • Learn via: Classroom
  • Duration: 4 Days
  • Level: Fundamentals
  • Price: From €4,953+VAT
We can host this training at your preferred location. Contact us!

This is a technical course that introduces the Python 3 programming language. It is an instructor led presentation and hands on exercises course using MS Windows, but is equally applicable to other platforms such as Linux.

Target Audience

This course is suitable for programmers starting new projects in Python 3, or for those porting existing applications from Python 2.

No previous knowledge of Python is assumed, although delegates should be familiar with at least one programming language.

Experience of another scripting language, such as Perl or PHP, will be an advantage, as will previous experience of object oriented programming.

At the end of this course you will be able to:

  • Use the Python interactive interpreter to write and run Python 3 programs
  • Understand Python 3 language elements
  • Exploit the rich library of Python libraries and modules
  • Appreciate the differences between Python 2 and Python 3
  • Recognize simple and complex variable types and select appropriately
  • Use Python 3 operators and built-in functions
  • Understand procedural control flow in Python 3
  • Program file input/output, including persistent data objects.
  • Create well organized and efficient code using functions and modules
  • Use Object Oriented programming techniques in Python 3.
  • Build robust applications with error trapping and reporting
  • Run and control other programs from Python
  • Take advantage of multi-core processors with multiprocessing

Chapter 1: Introduction to Python 3

  • What is Python?
  • What is Python 3?
  • Why Python?
  • Performance downsides
  • The community
  • Running Python interactively
  • Python scripts
  • Python help
  • Anatomy of a Python script
  • Modules
  • Functions and built-ins

Chapter 2: Fundamental Variables

  • Python is Object Oriented
  • Python variables
  • Variable names
  • Type specific methods
  • Operators and type
  • Augmented assignments
  • Python types
  • Switching types
  • Python lists introduced
  • Python tuples introduced
  • Python dictionaries introduced

Chapter 3: Flow Control

  • Python conditionals
  • Indentation
  • What is truth?
  • Boolean and logical operators
  • Chained comparisons
  • Sequence and collection tests
  • Object types
  • A note on Exception Handling
  • While loops
  • Loop control statements
  • For loops
  • enumerate
  • Counting 'for' loops
  • Zipping through multiple lists
  • Conditional expressions
  • Unconditional flow control

Chapter 4: String Handling

  • Python 3 strings
  • The print function
  • Cooking strings
  • String concatenation
  • 'Quotes'
  • String methods
  • String tests
  • String formatting
  • Other string formatting aids
  • Slicing a string
  • String methods - split and join

Chapter 5: Collections

  • Python types - reminder
  • Useful tuple operations
  • Python lists
  • Tuple and list slicing
  • Extended iterable unpacking
  • Adding items to a list
  • Removing items by position
  • Removing list items by content
  • Sorting
  • List methods
  • Sets
  • Exploiting sets
  • Set operators
  • Python dictionaries
  • Dictionary values
  • Removing items from a dictionary
  • Dictionary methods
  • View objects

Chapter 6: Regular Expressions

  • Python regular expressions
  • Elementary extended RE meta-characters
  • Regular expression objects
  • Regular expression substitution
  • Regular expression split
  • Matching alternatives
  • Anchors
  • Class shortcuts
  • Flags
  • Repeat quantifiers
  • Quantifiers
  • Parentheses groups
  • Back-references
  • Global matches

Chapter 7: Data Storage and File Handling

  • New file objects
  • Reading files into Python
  • Reading tricks
  • Filter programs - fileinput module
  • Binary mode
  • Writing to files from Python
  • Standard streams
  • More tricks
  • Random access
  • Python pickle persistence
  • Pickle protocols
  • Build some shelves
  • Compression
  • Database interface overview
  • Example - SQLite from Python

Chapter 8: Functions

  • Python functions
  • Function parameters
  • Variadic functions
  • Assigning default values to parameters
  • Named (keyword) parameters
  • Enforcing named parameters
  • Returning objects from a function
  • Variables in functions
  • Nested functions
  • Variables in nested functions
  • Function documentation
  • Lamdba functions
  • Lambda as a sort key
  • Lambda in re.sub

Chapter 9: Advanced Collections

  • Advanced list functions - filter
  • List comprehensions
  • Set and dictionary comprehensions
  • Lazy lists
  • Generators
  • Generator objects and next - coroutines
  • List comprehensions as generators
  • Copying collections - problem
  • Copying collections - slice solution?
  • Copying collections - deepcopy solution

Chapter 10: Modules and Packages

  • What are modules and packages?
  • Multiple source files
  • How does Python find a module?
  • Importing a module
  • Importing names
  • Directories as packages
  • Writing a module
  • Module documentation
  • Testing a module
  • Python debugger
  • Python profiler
  • Distributing libraries - distutils

Chapter 11: Introduction to Classes and OOP

  • Classes and OOP
  • Object-Oriented terminology
  • Object-Oriented Programming
  • Using objects
  • Defining classes
  • Defining methods
  • Constructing an object
  • Special methods
  • Operator overload special methods
  • Properties
  • Properties and decorators
  • Class methods
  • Inheritance
  • Inheritance terminology

Chapter 12: Error Handling and Exceptions

  • Writing to stderr
  • Controlling warnings
  • Exception handling
  • Exception syntax
  • Multiple exceptions
  • Exception arguments
  • The finally block
  • Order of execution
  • The Python exception hierarchy
  • A common mistake
  • The raise statement
  • Raising our own Exceptions
  • assert

Chapter 13: Multitasking

  • Family life
  • Creating a process from Python
  • Old interface examples
  • Waiting for a child
  • Using the subprocess module
  • The subprocess.Popen class
  • Running a basic process
  • Capturing the output
  • Passing data through a pipe
  • Processes and threads
  • Very basic threads in Python
  • Synchronization objects in threading
  • The trouble with threads
  • Using the multiprocessing module
  • Queue objects

Chapter 14: The Python Standard Library

  • The Standard Library
  • Example - converting Python 2 scripts to Py3
  • Pretty Printer - a useful utility
  • Operating System interfaces - os and friends
  • System specific attributes - sys
  • Signal handling - signal
  • Converting a signal to an exception
  • Configuration files
  • The configparser module
  • The datetime module and friends
  • The platform module
  • External function interface - ctypes
  • The socket module
  • __future__
  • Other modules



Contact us for more detail about our trainings and for all other enquiries!

Upcoming Trainings

Join our public courses in our South Africa facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

05 January 2025 (4 Days)
Cape Town, Durban, Johannesburg
Classroom / Virtual Classroom
10 January 2025 (4 Days)
Cape Town, Durban, Johannesburg
Classroom / Virtual Classroom
15 January 2025 (4 Days)
Cape Town, Durban, Johannesburg
Classroom / Virtual Classroom
05 January 2025 (4 Days)
Cape Town, Durban, Johannesburg
Classroom / Virtual Classroom
10 January 2025 (4 Days)
Cape Town, Durban, Johannesburg
Classroom / Virtual Classroom
15 January 2025 (4 Days)
Cape Town, Durban, Johannesburg
Classroom / Virtual Classroom
24 March 2025 (4 Days)
Cape Town, Durban, Johannesburg
Classroom / Virtual Classroom
€4,953 +VAT
Book Now
12 April 2025 (4 Days)
Cape Town, Durban, Johannesburg
Classroom / Virtual Classroom
Python 3 Programming Training Course in South Africa

Formerly known as Union of South Africa, now officially known as Republic of South Africa is the Southernmost country in Africa. South Africa's population is over 60 million people, which makes the country the world's 23rd-most populous nation. South Africa has three capital cities: executive Pretoria, judicial Bloemfontein and legislative Cape Town, while the largest city is Johannesburg. The official languages of South Africa are Afrikaans, English, Ndebele, Pedi, Sotho, Swati, Tsonga, Tswana, Venda, Xhosa and Zulu.

South Africa can be rainy from November to February, so the best time to visit South Africa is from May to September. Despite the rainy season South Africa is a year-round destination, with varying regional climates. Blyde River Canyon, Durban, Drakensberg, Kruger National Park and of course, Cape Town are the tourist attractions of the country.

Expand your IT knowledge with our comprehensive range of courses, including programming, software development, business skills, data science, cybersecurity, cloud computing and virtualization. Our skilled instructors will facilitate hands-on training and share practical insights, all conveniently conducted at your preferred location within South Africa.
By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.