> Articles > Closure In Python

Closure In Python

A closure in python is created when a function is available inside another function.

What is Closure in Python?

When a function is available inside another function then closure is created. The inner function will have access to variable and parameters of outer function even after return of outer function. That means we can call the inner function later and it will have access to variables and parameters of outer function. The closure has reference to the variables and parameters of outer function.

Let's see some closure in python examples-

Example 1

A function is inside another function so closure is created and inside function has access to variable and parameter of outer function.

Closure In Python Example 1

Output

Executing command : NetHub restore

Example 2

Closure will have reference to variable and parameter of outer function, not the actual value.

Closure In Python Example 2

Output

Executing command : readELF dump

Example 3

For each call to a function a closure is created and value of variable and parameter will be applicable to that closure only.

Closure In Python Example 3

Output

Executing command : NetHub 1.0 restore
Executing command : NetHub 2.0 restore
Executing command : NetHub 1.0 backup


Suresh Kumar Srivastava is founder of online learning site coursegalaxy.com and author of popular books C In Depth, Data Structures Through C In Depth. He has 18+ years experience in industry and worked on architecture and design of multiple products. This article Closure In Python is from his Advanced Python course.