Faster Python Code

Go to class
Write Review

Free Online Course: Faster Python Code provided by LinkedIn Learning is a comprehensive online course, which lasts for 2-3 hours worth of material. The course is taught in English and is free of charge. Upon completion of the course, you can receive an e-certificate from LinkedIn Learning. Faster Python Code is taught by Miki Tebeka.

Overview
  • Learn tips to help optimize your Python code. Discover how to pick the right data structures, use caching, integrate performance in your process, and more.

Syllabus
  • Introduction

    • Welcome
    • What you should know
    1. Tools of the Trade
    • Always profile first
    • General tips
    • Measuring time
    • CPU profiling
    • line_profiler
    • Tracing memory allocations
    • memory_profiler
    2. Picking the Right Data Structure
    • Big-O notation
    • bisect
    • deque
    • heapq
    • Beyond the standard library
    3. Tricks of the Trade
    • Local caching of names
    • Remove function calls
    • Using __slots__
    • Built-ins
    • Allocate
    4. Caching
    • Overview
    • Pre-calculating
    • lru_cache
    • Joblib
    5. Cheating
    • When approximation is good enough
    • Cheating example
    6. Parallel Computing
    • Amdahl's Law
    • Threads
    • Processes
    • asyncio
    7. Beyond Python
    • NumPy
    • Numba
    • Cython
    • PyPy
    • C extensions
    8. Adding Optimization to Your Process
    • Why do we need a process?
    • Design and code reviews
    • Benchmarks
    • Monitoring and alerting
    Conclusion
    • Next steps