Real Python
  • Start Here
  • Learn Python
    Python Tutorials →
    In-depth articles and video courses
    Learning Paths →
    Guided study plans for accelerated learning
    Quizzes & Exercises →
    Check your learning progress
    Browse Topics →
    Focus on a specific area or skill level
    Community Chat →
    Learn with other Pythonistas
    Office Hours →
    Live Q&A calls with Python experts
    Podcast →
    Hear what’s new in the world of Python
    Books →
    Round out your knowledge and learn offline
    Reference →
    Concise definitions for common Python terms
    Code Mentor →Beta
    Personalized code assistance & learning tools
    Unlock All Content →
  • More
    Learner Stories Python Newsletter Python Job Board Meet the Team Become a Tutorial Writer Become a Video Instructor
  • Search
/
  • Join
  • Sign‑In

— FREE Email Series —

🐍 Python Tricks 💌

Python Tricks Dictionary Merge

🔒 No spam. Unsubscribe any time.

Browse Topics Guided Learning Paths
Basics Intermediate Advanced
ai algorithms api best-practices career community databases data-science data-structures data-viz devops django docker editors flask front-end gamedev gui machine-learning news numpy projects python stdlib testing tools web-dev web-scraping

Table of Contents

  • Python Functions
    • First-Class Objects
    • Inner Functions
    • Functions as Return Values
  • Simple Decorators in Python
    • Adding Syntactic Sugar
    • Reusing Decorators
    • Decorating Functions With Arguments
    • Returning Values From Decorated Functions
    • Finding Yourself
  • A Few Real World Examples
    • Timing Functions
    • Debugging Code
    • Slowing Down Code
    • Registering Plugins
    • Authenticating Users
  • Fancy Decorators
    • Decorating Classes
    • Nesting Decorators
    • Defining Decorators With Arguments
    • Creating Decorators With Optional Arguments
    • Tracking State in Decorators
    • Using Classes as Decorators
  • More Real-World Examples
    • Slowing Down Code, Revisited
    • Creating Singletons
    • Caching Return Values
    • Adding Information About Units
    • Validating JSON
  • Conclusion
  • Further Reading
  • Frequently Asked Questions

Recommended Video Course
Python Decorators 101