Python Course Overview
Welcome to the Python Programming Course. This track mirrors your Java course structure and is built from official Python documentation.
Official Source Policy
All topics in this section are based on official Python documentation from docs.python.org and related official Python references (such as PEPs hosted on peps.python.org).
Course Objectives
By the end of this course, you will be able to:
- Understand Python’s execution model, syntax, and runtime basics.
- Work confidently with Python built-in types and core data structures.
- Use control flow tools (
if, loops,match, comprehensions) effectively. - Write reusable functions and organize code using modules and packages.
- Build classes using Pythonic OOP patterns, including inheritance and iterators.
- Handle exceptions properly with
try/except/else/finallyand context managers. - Use
dataclasses, type hints, and virtual environments in practical workflows. - Apply important standard library modules for real-world development tasks.
- Build and reason about Django applications using secure, maintainable patterns.
- Use Python effectively for cyber security automation and secure coding.
- Apply Python to networking tasks including sockets, async I/O, and IP tooling.
- Understand a Python data science workflow and foundational scientific tooling.
Course Outline
1. Python Basics
- Python language overview
- Running Python code and scripts
- Virtual environments with
venv
2. Built-in Data Types
- Numeric, sequence, mapping, set, and text types
- Truthiness and common operations
- String formatting patterns
3. Control Flow
if,for,while,break,continue, and loopelserange()and iteration patterns- Structural pattern matching (
match/case)
4. Functions, Modules, and Packages
- Function parameters and call patterns
- Docstrings and annotations
- Import system, modules, package layout, and script entry points
5. Object-Oriented Python
- Class syntax, instances, methods, and attribute lookup
- Inheritance, MRO, and iterator/generator patterns
- Dataclasses and practical type hints
6. Errors, Exceptions, and Cleanup
- Syntax errors vs runtime exceptions
- Exception handling and chaining
- Cleanup using
finallyandwith
7. Standard Library and Tooling
- Core modules for OS/files, regex, math, datetime, and testing
- CLI parsing and quality tooling
- Environment management and reproducibility
8. Python with Django
- Django architecture, request lifecycle, models, views, and URL routing
- Secure defaults and production hardening basics
- Practical project organization patterns
9. Python for Cyber Security
- Security-oriented Python modules (
secrets,hashlib,ssl,socket) - Secure coding practices and threat-aware design basics
- Automation and defensive scripting patterns
10. Python for Networking
- TCP/UDP fundamentals with
socket - Async networking with
asyncio - IP and network operations with
ipaddress
11. Python for Data Science
- Data workflow: ingestion, cleaning, analysis, and evaluation
- Python standard modules for analysis support
- Core ecosystem orientation (NumPy, pandas, Matplotlib, scikit-learn)
Primary Official References
- Python Tutorial: https://docs.python.org/3/tutorial/index.html
- Python Language Reference: https://docs.python.org/3/reference/index.html
- Python Standard Library: https://docs.python.org/3/library/index.html
- Built-in Types: https://docs.python.org/3/library/stdtypes.html
- Built-in Functions: https://docs.python.org/3/library/functions.html
Getting Started
Install a current Python 3 release from python.org, create a virtual environment, and run examples locally as you progress.