Back

Advanced Python

This event has expired

Course Overview and Course Description

  • This course will take you deeper into the Python programming language and its ecosystem.
  • This course provides a solid overview of the Python language including some low level details essential to working confidently and fluidly with Python.
  • The focus is on practical programming and the skills learned here can be applied in any field where Python is used.
  • Become an expert on the Python language and ecosystem.

Pre-Requisite

  • Python Basics
  • Recent Version of Python Installed
  • Any IDE (like visual studio code)

Duration

  • 32 hours

Course Outline

Day 1 (4 hours)

Module 1 – Python Numbers, Strings, Lists, Dictionaries, Tuples, Sets

  • Introduction to Python
  • Mathematical Functions
  • Built-in string methods
  • List Operations
  • Tuple Slices
  • Dictionary methods

Hands-on – Hands-on with Python basics, data manipulation, and Mathematical Problems

Expected Learning Outcome – Build foundational Python skills

Sample Use Case/ Project Description – Practical: Polished notation conversions

Lab / Software / Tool Requirement – Python, VS code

Assessment Checkpoint Type – Practical exercise submission

Remarks – Focus on fundamentals

Day 1 (4 hours)

Module 2 – Advanced Object Orientation

  • Classes
  • Inheritance
  • Mixins
  • Metaprogramming

Hands-on – Hands-on with Oops (Inheritance and Composition)

Expected Learning Outcome – Understand Oops in python

Sample Use Case/ Project Description – Practical: A simple Abstract factory and Builder Design

Lab / Software / Tool Requirement – Vs Code and Jupiter notebook extension on vscode

Assessment Checkpoint Type – Practical exercise submission

Remarks – Focus on Oops Design Skills

Day 2 (4 hours)

Module 3 – Functional Programming

  • Higher order functions Closures
  • Lambdas
  • Partial application
  • Map-reduce

Hands-on – Hands-on with nested function and local resource capture

Expected Learning Outcome – Learn to write closures and lambda

Sample Use Case/ Project Description – Practical : Data manipulation of collections

Lab / Software / Tool Requirement – Python, VS code

Assessment Checkpoint Type – Practical exercise submission

Remarks – Strong data foundation

Day 2 (4 hours)

Module 4 – Advanced Language Features

  • Decorators
  • Iterators
  • Comprehensions
  • Generators
  • Coroutine
  • References and mutable objects

Hands-on – Hands-on with Comprehension, generators and Coroutine

Expected Learning Outcome – Understand collection memory use and yield operations

Sample Use Case/ Project Description – Practical : dictionary, list and set comprehension and generators

Lab / Software / Tool Requirement – Jupyter notebook extension for vscode

Assessment Checkpoint Type – Data Conversion between files

Remarks – Data  Conversions

Day 3 (4 hours)

Module 5 – Threads and Concurrency

  • Synchronization amongst threads
  • Using Lock and RLock for mutual exclusion.
  • Using Condition and Event for wait/notify patterns.
  • Using Semaphore and BoundedSemaphore for bandwidth management.
  • Implementing Producer/Consumer patterns using Queue.
  • Implementing thread pool

Hands-on – Hands-on with Async Operation and Data Exchange Between Threads

Expected Learning Outcome – Use of Async Operations and locking mechanism

Sample Use Case/ Project Description – Practical : Threading and Concurrency

Lab / Software / Tool Requirement – Python, VS code

Assessment Checkpoint Type – Synchronization to handle resources

Remarks – Resource Acquisition and release

Day 3 (4 hours)

Module 6 – Multiprocessing using Python

  • Pipe and Queue
  • Value and Array
  • Using Manager for shared list and dictionaries
  • Memory-Mapped Files (mmap module)

Hands-on – Implementing RPC using multiprocessing.manager module

Expected Learning Outcome – Understanding Process Vs Thread: performance and design implications.

Sample Use Case/ Project Description – Practical : Using multiprocessing.Pool for parallel map algorithms

Lab / Software / Tool Requirement – VS code

Assessment Checkpoint Type – A Simple Communication between processes

Remarks – Interprocess Communication

Day 4 (4 hours)

Module 7 – Marshalling and Data Persistence

  • Marshalling and Unmarshalling objects using pickle
  • cPickle and json modules

Hands-on – Parsing, processing and storing with standard file formats

Expected Learning Outcome – Understand Data Persistence

Sample Use Case/ Project Description – CSV using csv module, XML using ElementTree, JSON using json module, YAML using PyYAML module, INI/CFG parsing using configparser module

Lab / Software / Tool Requirement – Jupyter notebook extension for vscode

Assessment Checkpoint Type – Data persistence using shelve module

Remarks – Object and Collection Momento

Day 4 (4 hours)

Module 8 – Networking

  • Making requests
  • REST APIs and the requests library
  • An overview of the socket module

Hands-on – Creating network servers and clients using socket module

Expected Learning Outcome – Understanding http request-response cycle

Sample Use Case/ Project Description – Creating asynchronous Socket server and clients using asyncore module

Lab / Software / Tool Requirement – VS code

Assessment Checkpoint Type – Client Server Communication

Remarks – Types of Listeners

Register Here

    Start Time

    9:30 am

    July 28, 2025

    Finish Time

    5:30 pm

    July 31, 2025

    Address

    Virtual