Python Private Self-Paced

Advanced Python 3 Training (PYT238)

Course Length: 2 days

This Advanced Python course is designed for experienced Python developers looking to deepen their understanding and master advanced programming concepts.

Register or Request Training

  • Private class for your team
  • Live expert instructor
  • Online or on‑location
  • Customizable agenda
  • Proposal turnaround within 1–2 business days
Price per student
$99.90 or 3 vouchers
  • On Demand 24/7
  • Readings, Video Presentations, Exercises
  • Quizzes to knowledge check
  • Life-Time Access

Course Overview

This Advanced Python course is designed for experienced Python developers looking to deepen their understanding and master advanced programming concepts. The course covers a wide range of topics, including functional programming, data manipulation, testing, debugging, and object-oriented programming, equipping you with the skills to write efficient, robust, and scalable Python code.

The course begins with Advanced Python Concepts, where you'll explore lambda functions, advanced list comprehensions, and the collections module, including creating defaultdict and counters. You'll also learn about mapping and filtering, mutable and immutable objects, and various sorting techniques. This module includes hands-on exercises to practice creating dictionaries, unpacking sequences, and converting data types. You'll also gain insights into working with modules and packages for efficient code management.

Next, you'll dive into Regular Expressions, learning how to use Python's regular expression syntax and tools to search, match, and manipulate text. You'll use the regular expression tester, understand Python's handling of regex patterns, and complete exercises like the "Green Glass Door" challenge to apply your skills in practical scenarios.

The Working with Data module focuses on managing and manipulating different types of data in Python. You'll start by setting up a virtual environment and working with relational databases like SQLite. The course includes exercises for querying databases, inserting data, and using drivers for other databases. You'll also explore working with CSV files, scraping data from the web, and handling XML and JSON formats, with practical exercises on each topic.

In Testing and Debugging, you'll learn best practices for writing robust code, testing for performance, and using the unittest module. You'll also explore special testing methods and complete exercises to practice debugging, fixing functions, and optimizing code performance.

The course covers Classes and Objects in depth, providing a thorough understanding of object-oriented programming in Python. You'll learn about attributes, methods, inheritance, and decorators, as well as how to implement static and abstract methods. Hands-on exercises will guide you through creating and extending classes, using private attributes, and documenting your code effectively.

By the end of this Advanced Python course, you will have developed a comprehensive skill set that enables you to tackle complex programming tasks, manage data efficiently, and create well-structured, maintainable code. You'll be ready to apply these advanced Python techniques in real-world projects and professional environments.

Course Benefits

  • Lambda functions.
  • Advanced list comprehensions.
  • The collections module.
  • Mapping and filtering.
  • Sorting sequences.
  • Unpacking sequences in function calls.
  • Modules and packages.
  • Understanding regular expressions.
  • Python's re module.
  • Data stored in a relational database.
  • Data stored in a CSV file.
  • Data from a web page.
  • HTML, XML, and JSON.
  • Accessing an API.
  • Testing performance with timers and the timeit module.
  • The unittest module.
  • Classes and objects in Python.
  • Instance methods, class methods, and static methods.
  • Properties.
  • Decorators.
  • Subclasses and inheritance.

Delivery Methods

Private Class
Delivered for your team at your site or online.
Self-Paced
Learn at your own pace with 24/7 access.

Course Outline

  1. Advanced Python Concepts
    1. Lambda Functions
    2. Advanced List Comprehensions
    3. Exercise: Rolling Five Dice
    4. Collections Module
    5. Exercise: Creating a defaultdict
    6. Counters
    7. Exercise: Creating a Counter
    8. Mapping and Filtering
    9. Mutable and Immutable Built-in Objects
    10. Sorting
    11. Exercise: Converting list.sort() to sorted(iterable)
    12. Sorting Sequences of Sequences
    13. Creating a Dictionary from Two Sequences
    14. Unpacking Sequences in Function Calls
    15. Exercise: Converting a String to a datetime.date Object
    16. Modules and Packages
  2. Regular Expressions
    1. Regular Expression Tester
    2. Regular Expression Syntax
    3. Python's Handling of Regular Expressions
    4. Exercise: Green Glass Door
  3. Working with Data
    1. Virtual Environment
    2. Relational Databases
    3. Passing Parameters
    4. SQLite
    5. Exercise: Querying a SQLite Database
    6. SQLite Database in Memory
    7. Exercise: Inserting File Data into a Database
    8. Drivers for Other Databases
    9. CSV
    10. Exercise: Finding Data in a CSV File
    11. Creating a New CSV File
    12. Exercise: Creating a CSV with DictWriter
    13. Getting Data from the Web
    14. Exercise: HTML Scraping
    15. XML
    16. JSON
    17. Exercise: JSON Home Runs
  4. Testing and Debugging
    1. Testing for Performance
    2. Exercise: Comparing Times to Execute
    3. The unittest Module
    4. Exercise: Fixing Functions
    5. Special unittest.TestCase Methods
  5. Classes and Objects
    1. Attributes
    2. Behaviors
    3. Classes vs. Objects
    4. Attributes and Methods
    5. Exercise: Adding a roll() Method to Die
    6. Private Attributes
    7. Properties
    8. Exercise: Properties
    9. Objects that Track their Own History
    10. Documenting Classes
    11. Exercise: Documenting the Die Class
    12. Inheritance
    13. Exercise: Extending the Die Class
    14. Extending a Class Method
    15. Exercise: Extending the roll() Method
    16. Static Methods
    17. Class Attributes and Methods
    18. Abstract Classes and Methods
    19. Understanding Decorators

Class Materials

Each student receives a comprehensive set of materials, including course notes and all class examples.

Class Prerequisites

Experience in the following is required for this Python class:

  • Basic Python programming experience. In particular, you should be very comfortable with:
    1. Working with strings.
    2. Working with lists, tuples and dictionaries.
    3. Loops and conditionals.
    4. Writing your own functions.

Experience in the following would be useful for this Python class:

  • Some exposure to HTML, XML, JSON, and SQL.

Prerequisite Courses

Courses that can help you meet these prerequisites:

Have questions about this course?

We can help with curriculum details, delivery options, pricing, or anything else. Reach out and we’ll point you in the right direction.