Detailed Course Outline
An Overview of Python 3
    Introduction to Python and setting up the developer environment 
Basic Python Syntax
    Explore the basic syntax and semantics of Python
Language Components
    Understand the basic control flow features and operators
Collections
    Write programs that manipulate compound data using lists, sets, tuples and dictionaries
Functions
    Decompose your programs into composable functions
Modules
    Organize your code using Modules for flexibility and reuse
Classes in Python
    Explore Object Oriented Programming (OOP) with classes and objects
Exceptions
    Handle runtime errors using Exceptions
Input and Output
    Implement programs that read and write files
Data Structures
    Use advanced data structures like generators and comprehensions to reduce boilerplate code
Regular Expressions
    Use powerful regular expressions to manipulate textual data
Parsing JSON
    Read and write JSON data
Debugging
    Debug Python programs using the Python debugger (pdb)
