Skip to main content
Get a Quote
Course Enquiry
Contact Us

Details

Python is now one of the most used Programming languages. Python general purpose, is easy to use and very high level.

In this course you will learn how to use some of the more advanced features of Python.  Including Adv Iteration, Decorators, Meta Classess, Multi Processing etc.

Base Cost

$766.00

Calculate Discount

  I will bring my own PC (less $66.00)
  I will book and pay 10 business days before the course (less $76.60)

Total

$
If you are currently resident in South Africa you will need to pay VAT at 15%.

Duration:

2 Days

Brochure:

Download Brochure


Information may change without notice.

Delivery Method

Instructor Led classroom based training. Scheduled classes are normally held in Woodmead - near to Sandton in Johannesburg, Gauteng, South Africa. Stationary and textbook included. Refreshments, including 2 tea breaks and a cooked meal for lunch are provided. Contact hours are between 9am to 4pm.

Audience

Programmers with knowledge of python.

 

Pre-Requisites

Python Programming Course or equivalent experience

 

Course Outline / Curriculum

 Functional Programming

  •  Functions
  •  optional Arguments
  •  lambda
  •  Simple lambda functions
  •  Map
  •  Filter
  •  List Comprehension
  •  Generator expression
  •  Generator Functions

 Iteration Patterns in Python

  •  Itertools
  •  Abstracting iteration
  •  Iterable Pattern
  •  Low Level Iteration

Object Orientation

  • Modules
  • import
  • import invocation
  • class
  • class variable
  • methods
  • instance vars
  • constructor
  • inheritance
  • exceptions
  • raising exceptions
  • traceback
  • object special attributes
  • descriptors

Decorators

  •  Closure
  •  Applying closure
  •  Decorator Equivalent
  •  Decorators with args
  •  Example in Documentation

 MetaClasses

  •  Class Decorator
  •  Class Decorator
  •  Apply Class Decorator
  •  Classes are instances of type
  •  Create Class with type
  •  Default MetaClass is type
  •  Example MetaClass
  •  __new__
  •  Using __new__() to alter class properties

 Collections

  •  With and Context Managers
  •  Opening Files
  •  With equivalent
  •  How it works
  •  file context
  •  My Context Manager
  •  Output
  •  Context Decorator

Regular Expressions

re module

Profiling and Performance

  • Calling cProfile
  • The Muppy Module
  • The Muppy Module
  • You can create summaries
  • Compare them with other summaries
  • The tracker module
  • Reference Browser
  • ConsoleBrowser
  • Performance Tips
  • Choose the Right Data Structure
  • Sorting
  • String Concatenation
  • Loops
  • Avoiding dots

Multithreading

  • GIL
  • Thread and Threading
  • Using threading.Thread
  • Thread constructor args
  • Two Approaches to Thread
  • Trivial Example
  • Local Storage
  • Safe Multi Threading
  • Locking
  • Problems with Simple Locking
  • Re-Entrant Locks (RLock
  • Semaphores
  • Events
  • Conditions
  • Queue Module

Parallell Processing

  • The Process class
  • Forking other processes
  • os.system
  • os.popen
  • subprocess
  • subprocess.Popen class
  • Popen arguments
  • Popen examples
  • subprocess functions

Async Programming

  • Concurrent Futures
  • Coroutines
  • Asycio/Trollius
  • Future and Callbacks
  • Async IO 
  • Asynchronous routines

Schedule Dates and Booking

To apply for a booking, click on the relevant "Book Now" button below.
Note: places are only fully secured once payment has been made.

Start Date Branch Duration  
Mon 16 Mar 2020 Woodmead 2 Days Book Now
Mon 22 Jun 2020 Woodmead 2 Days
Mon 14 Sep 2020 Woodmead 2 Days