Programming On-Demand

Advanced Python 3 Training On-Demand (PYT238)

Advance your Python skills with functional programming, regex, data handling, testing, debugging, object-oriented design, inheritance, and decorators.

Enroll in On-Demand Training

Price per student
$49.00
  • On-demand access, 24/7
  • Readings, videos, and exercises
  • Quizzes to check your knowledge
  • Lifetime access

Course Overview

Advanced Python 3 Training is designed for experienced Python developers who want to expand their skills beyond the fundamentals and work more effectively with Python’s advanced language features, data-handling capabilities, testing tools, and object-oriented programming techniques. The course explores lambda functions, advanced comprehensions, collections, mapping and filtering, sorting, sequence operations, modules and packages, regular expressions, and practical techniques for writing more flexible and expressive Python code.

Learners also gain hands-on experience working with SQLite databases, CSV files, web data, HTML, XML, and JSON, while developing stronger testing and debugging practices with performance measurement and the unittest framework. Through practical exercises, participants build and extend classes, work with properties and inheritance, use static and class methods, explore abstract classes, and understand decorators, preparing them to design, test, and maintain more sophisticated Python applications.

Course Benefits

  • Apply advanced Python features such as lambda functions, comprehensions, mapping, filtering, sorting, and sequence unpacking.
  • Use collections including defaultdict and Counter to organize, count, and process data efficiently.
  • Create and apply regular expressions for validating, matching, and processing text.
  • Work with relational data using SQLite, parameterized queries, in-memory databases, and imported file data.
  • Read, search, create, and transform data stored in CSV, JSON, XML, and web-based formats.
  • Practice retrieving and scraping web content for use in Python data-processing workflows.
  • Analyze code performance and build automated tests with Python’s unittest framework.
  • Develop robust object-oriented programs using classes, properties, inheritance, class methods, static methods, and abstract classes.
  • Extend and document reusable classes while applying encapsulation and method-overriding techniques.
  • Understand decorators and other advanced Python concepts used to build maintainable, extensible applications.

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

Course Prerequisites

Required experience

  • 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.

Useful experience

  • Prior exposure to HTML, XML, JSON, and SQL is helpful but not required.

Prerequisite Courses

Follow-on On-Demand Courses

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.