Mini Map
Search
⌘ K
AI Features
Log In
Learn Python 3: Comprehensive Programming Guide
1.
Get Started
Introduction
2.
Orientation and First Code
Your First Program
Comments and Documentation
Quiz: Orientation and First Code
3.
Variables, Types, and Expressions
Variables
Data Types: Numeric and Boolean
Strings and String Methods
Operators and Expressions
Type Conversion and Casting
Handling User Input
Quiz: Variables, Types, and Expressions
Exercise: The Currency Conversion Kiosk
Solution: The Currency Conversion Kiosk
Exercise: The Product Slug Generator
Solution: The Product Slug Generator
Exercise: The Security Logic Gate
Solution: The Security Logic Gate
4.
Flow Control
Conditional Statements
Compound Conditions
While Loops and Counters
For Loops and Ranges
Controlling Loops: break, continue, and else
Quiz: Flow Control
Exercise: Thermostat Control Logic
Solution: Thermostat Control Logic
Exercise: Warehouse Cargo Loader
Solution: Warehouse Cargo Loader
Exercise: Factory Shift Monitor
Solution: Factory Shift Monitor
5.
Data Collections
Lists and Indexing
List Methods in Practice
Tuples: Fixed-Size Sequences
Dictionaries as Key-Value Maps
Sets and Membership
Choosing the Right Collection
Quiz: Collections and Data
Exercise: Cleaning Up User Data
Solution: Cleaning Up User Data
Exercise: Shopping Cart Calculator
Solution: Shopping Cart Calculator
Exercise: Server Log Analysis
Solution: Server Log Analysis
6.
Functions and Scope
Defining and Calling Functions
Variable Scope and Lifetime
Default and Keyword Arguments
Closures and Inner Functions
Anonymous (Lambda) Functions
Type Hints and Docstrings
Quiz: Functions and Scope
Exercise: Smart Shipping Calculator
Solution: Smart Shipping Calculator
Exercise: The Inventory Sorter
Solution: The Inventory Sorter
Exercise: The Discount Factory
Solution: The Discount Factory
7.
Comprehensions and Functional Tools
List Comprehensions
Nested and Conditional Comprehensions
Dictionary and Set Comprehensions
Functional Tools: map() and filter()
Aggregation with reduce()
Comprehension and Functional Style in Practice
Quiz: Comprehensions and Functional Tools
Exercise: Formatting High-Priority Alerts
Solution: Formatting High-Priority Alerts
Exercise: Creating an Inventory Lookup Map
Solution: Creating an Inventory Lookup Map
Exercise: Aggregating Regional Sales Revenue
Solution: Aggregating Regional Sales Revenue
Breakout Session
Python Fundamentals: Control Flow, Data Structures, Functions, and Scope
Mini Project
The "QuickCart" Inventory Manager
8.
The Python Object Model
Everything Is an Object
Object Identity and Attributes
Recap: Mutability vs. Immutability
Exploring Object Behavior
Peeking Inside Objects
Quiz: The Python Object Model
Exercise: Validating Shipment Identities
Solution: Validating Shipment Identities
Exercise: The Corrupted Configuration
Solution: The Corrupted Configuration
Exercise: The Data Inspector
Solution: The Data Inspector
9.
Organizing Code with Modules
Why Organize Code?
Imports and Namespaces
Creating Your Own Modules
Quiz: Organizing Code with Modules
Exercise: Construction Material Estimation
Solution: Construction Material Estimation
Exercise: Project Deadline Calculator
Solution: Project Deadline Calculator
Exercise: Sensor Noise Simulation
Solution: Sensor Noise Simulation
10.
Creating and Using Classes
Defining Classes and Creating Instances
The __init__ Method and Instance Attributes
Attributes, Methods, and self
Encapsulation and Data Management
Class Variables and Shared Data
Equality and Representation
Quiz: Creating and Using Classes
Exercise: Managing Store Inventory
Solution: Managing Store Inventory
Exercise: Secure User Vault
Solution: Secure User Vault
Exercise: Delivery Fleet Tracking
Solution: Delivery Fleet Tracking
11.
Object Relationships and Data Model
Composition and Design Flexibility
Inheritance and Code Reuse
Polymorphism and Method Overriding
Dunder Methods and Operator Overloading
namedtuple and dataclass
Quiz: Object Relationships and Data Model
Exercise: Tracking Inventory with Data Classes
Solution: Tracking Inventory with Data Classes
Exercise: Payment Processing with Inheritance
Solution: Payment Processing with Inheritance
Exercise: Merging Project Teams (Composition and Dunders)
Solution: Merging Project Teams (Composition and Dunders)
Breakout Session
Python Object Models: Classes, State Management, and System Architecture
12.
Error Handling and Debugging
Exceptions and Tracebacks
Catching and Raising Exceptions
Custom Exceptions
Assertions and Validation
Logging for Visibility
Debugging Tools
Quiz: Error Handling and Debugging
Exercise: Safe Financial Calculator
Solution: Safe Financial Calculator
Exercise: Inventory Validator with Custom Exceptions
Solution: Inventory Validator with Custom Exceptions
Exercise: Robust Transaction Processor
Solution: Robust Transaction Processor
13.
Testing and Code Quality
Unit Testing with unittest
Testing with pytest
Mocking and Patch
Static Analysis and Linting
Quiz: Testing and Code Quality
Exercise: Testing Physics Calculations with unittest
Solution: Testing Physics Calculations with unittest
Exercise: Inventory Management with pytest Fixtures
Solution: Inventory Management with pytest Fixtures
Exercise: Mocking an External Payment API
Solution: Mocking an External Payment API
14.
Working with Files
Reading Text Files
Writing and Appending Files
Working with Binary Files
Path Handling with pathlib
JSON and Serialization
Quiz: Working with Files
Exercise: Log Entry Formatter
Solution: Log Entry Formatter
Exercise: Inventory Report Generator
Solution: Inventory Report Generator
Exercise: Secure Binary File Cloner
Solution: Secure Binary File Cloner
15.
Iterators and Generators
The Iterator Protocol
Creating Generators with yield
Generator Expressions
Building Custom Iterators
Quiz: Iterators and Generators
Exercise: Memory-Efficient Log Filter
Solution: Memory-Efficient Log Filter
Exercise: Financial Transaction Pipeline
Solution: Financial Transaction Pipeline
Exercise: Custom Countdown Iterator
Solution: Custom Countdown Iterator
Mini Project
BiblioTech: The Robust Library Manager
16.
Working with Data and APIs
Understanding Web Communication
HTTP Requests and JSON Handling
Network Errors and Resilience
Storing Data with SQLite
Quiz: Working with Data and APIs
Exercise: Setting Up a Local Inventory
Solution: Setting Up a Local Inventory
Exercise: Fetching and Storing Remote Data
Solution: Fetching and Storing Remote Data
Exercise: Fault-Tolerant Data Ingestion
Solution: Fault-Tolerant Data Ingestion
17.
Managing Packages and Environments
Packages and __init__.py
Configuration Management with .env Files
Virtual Environments
Quiz: Managing Packages and Environments
Exercise: Accessing Environment Variables
Solution: Accessing Environment Variables
Exercise: Defining Public Package Interfaces
Solution: Defining Public Package Interfaces
18.
Parallel and Concurrent Programming
Concurrency Concepts
Multithreading with threading
Multiprocessing with multiprocessing
Data Sharing and Synchronization
Quiz: Parallel and Concurrent Programming
Exercise: Concurrent Server Health Checks
Solution: Concurrent Server Health Checks
Exercise: Parallelizing Heavy Calculations
Solution: Parallelizing Heavy Calculations
Exercise: Thread-Safe Inventory Counter
Solution: Thread-Safe Inventory Counter
19.
Asynchronous Programming
Intro to AsyncIO
Coroutines and await
Async HTTP Requests with aiohttp
Managing Tasks with asyncio.gather
Choosing the Right Concurrency Model
Quiz: Asynchronous Programming
Exercise: The Async Coffee Shop
Solution: The Async Coffee Shop
Exercise: Concurrent Stock Ticker
Solution: Concurrent Stock Ticker
Exercise: User Dashboard Aggregator
Solution: User Dashboard Aggregator
Breakout Session
Python Concurrency Models: I/O, Parallelism, and Async Execution
20.
Advanced Functions and Decorators
Higher-Order and Wrapper Functions
Decorators Deep Dive
Creating Parameterized Decorators
Context Managers
Quiz: Advanced Functions and Decorators
Exercise: The Audit Decorator
Solution: The Audit Decorator
Exercise: The Performance Timer
Solution: The Performance Timer
Exercise: The Retry Mechanism
Solution: The Retry Mechanism
21.
Introspection and Type-Level Metaprogramming
Inspecting and Extending Python’s Runtime
Dynamic Attributes and Class Modification
Metaclasses in Action
Exploring Dynamic Code and Safety
Quiz: Introspection and Type-Level Metaprogramming
Exercise: Dynamic Inventory Updater
Solution: Dynamic Inventory Updater
Exercise: Safe Formula Calculator
Solution: Safe Formula Calculator
Exercise: Auto-Registering Plugin System
Solution: Auto-Registering Plugin System
22.
Building and Distributing Applications
CLI Tools with argparse and click
Project Structure and Dependencies
Packaging and Publishing to PyPI
Versioning and Release Management
Beyond the Standard Library
The Zen of Python: A Reflection on Craft
Quiz: Building and Distributing Applications
Exercise: Complex CLI with Subcommands
Solution: Complex CLI with Subcommands
Exercise: Creating a CLI for Version Management
Solution: Creating a CLI for Version Management
Mini Project
FactStorm CLI
23.
Wrapping Up
Conclusion
Claim your Certificate