Advanced Python
- Course Code GK821512
- Duration 5 days
- Version 1.0
Course Delivery
Jump to:
Course Delivery
This course is available in the following formats:
-
Company Event
Event at company
-
Public Classroom
Traditional Classroom Learning
-
Virtual Learning
Learning that is virtual
Request this course in a different delivery format.
Course Overview
TopCourse Schedule
Top-
- Delivery Format: Virtual Learning
- Date: 08-12 December, 2025 | 8:00 AM to 4:00 PM Guaranteed To Run
- Location: Virtual (GMT Standa)
- Language: English
-
Guaranteed To Run
-
- Delivery Format: Virtual Learning
- Date: 19-23 January, 2026 | 9:00 AM to 5:00 PM
- Location: Virtual (GMT Standa)
- Language: English
-
- Delivery Format: Virtual Learning
- Date: 16-20 February, 2026 | 8:00 AM to 4:00 PM
- Location: Virtual (GMT Standa)
- Language: English
-
- Delivery Format: Virtual Learning
- Date: 27-31 July, 2026 | 9:00 AM to 5:00 PM
- Location: Virtual (GMT Standa)
- Language: English
-
- Delivery Format: Virtual Learning
- Date: 24-28 August, 2026 | 8:00 AM to 4:00 PM
- Location: Virtual (GMT Standa)
- Language: English
Target Audience
TopCourse Objectives
TopThis course has 50% hands-on labs to 50% lecture ratio with engaging instruction, demos, group discussions, labs, and project work in which you’ll learn:
Enhancements to classes
Advanced Python metaprogramming concepts
Writing robust code using exception handling
Working with different data structures supported in Python
Search and replace text with regular expressions
Easy-to-use and easy-to-maintain modules and packages
Creating multithreaded and multi-process applications
Implementing and execute unit tests
Course Content
TopDay 1
Python refresher
Built-in data types
Lists and tuples
Dictionaries and sets
Program structure
Files and console I/O
If statement
for and while loops
Data Structures and Algorithms
Linked list
Stack
Queue
Trees
Graphs
Sorting algorithms
Day 2
Errors and Exception Handling
Syntax errors
Exceptions
Using try/catch/else/finally
Handling multiple exceptions
Ignoring exceptions
Implementing Regular Expressions
RE Objects
Searching and matching
Using Regular Expression to search data sets
Searching for data in Wireshark Traces (Python and *.pcaps)
Compilation flags
Groups and special groups
Replacing text
Splitting strings
Advanced Functional Features of Python
Advanced unpacking
List Comprehension
Anonymous functions
Lambda expressions
Generator Expression
Decorator
Closure
Single/multi dispatch
Relative imports
Using __init__ effectively
Documentation best practices
Day 3
Metaprogramming
OOP conventions
Class/static data and methods
Parse information to create classes using a dictionary
Super() method
Metaclasses
Abstract base classes
Implementing protocols (context, iterator, etc.) with special methods
Implicit properties
Globals() and locals()
Working with object attributes
The inspect module
Callable classes
Monkey patching
Advanced file handling
Paths, directories, and filenames
Checking for existence
Permissions and other file attributes
Walking directory trees
Creating filters with fileinput
Using shutil for file operations
Day 4
Advanced Data Structure features in Python
Use defaultdict, Counter, and namedtuple
Create data classes
Store data offline with pickle
Pretty printing data structures
Compressed archives (zip, gzip, tar, etc.)
Persistent data
Multiprogramming
Concurrent programming
Multithreading
The threading module
Sharing variables
The queue module
The multiprocessing module
Creating pools
Coroutines
About async programming
Python Design Patterns
Need for design patterns and types
Creational
Structural
Behavioral
Best coding practices
Day 5
Developer Tools
Analyzing programs with pylint
Using the debugger
Profiling code
Testing speed with benchmarking
Unit testing with PyTest
What is a unit test
Testing with Unit-test framework
Testing with PyTest
Testing with doctest
Writing tests
Working with fixtures
Test runners
Mocking resources
Writing real-life applications
Build the classic minesweeper game in the command line
Build a program that can go into any folder on your computer and rename all of the files based on the conditions set in your Python code
Implement the binary search algorithm
Build a random password generator
Build a countdown timer using the time Python module.