Skip to main content

Python lambda Tutorial

Learn a quicker way of writing functions on the fly with lambda functions.
Aug 2020  · 3 min read

You can write your very own Python functions using the def keyword, function headers, docstrings, and function bodies. However, there's a quicker way to write functions on the fly, and these are called lambda functions because you use the keyword lambda.

Some function definitions are simple enough that they can be converted to a lambda function. By doing this, you write fewer lines of code, which is pretty awesome and will come in handy, especially when you're writing and maintaining big programs.

lambda Function

Here we rewrite our function raise_to_power as a lambda function. After the keyword lambda, we specify the names of the arguments; then, we use a colon followed by the expression that specifies what we wish the function to return.

raise_to_power = lambda x, y: x ** y

raise_to_power(2, 3)
8

As mentioned, the lambda functions allow you to write functions in a quick and dirty way, so we wouldn't advise you to use them all the time, but there are situations when they come in handy, like the example below.

map() and lambda Function

The map function takes two arguments, a function and a sequence such as a list and applies the function over all the elements of the sequence. We can pass lambda function to the map without even naming them, and in this case, we refer to them as anonymous functions.

In this example, we use map() on the lambda function, which squares all elements of the list, and we store the result in square_all.

nums = [48, 6, 9, 21, 1]

square_all = map(lambda num: num ** 2, nums)

print(square_all)
<map object at 0x103e065c0>

Printing square_all reveals that its a map object, so to see what it returns, we use list to turn it into a list and print the result.

print(list(square_all))
[2304, 36, 81, 441, 1]

Interactive Example of Writing a lambda Function

The below function echo_word takes 2 parameters: a string value, word1, and an integer value echo. It returns a string that is a concatenation of echo copies of word1.

You will convert the above simple function into a lambda function.

def echo_word(word1, echo):
    """Concatenate echo copies of word1."""
    words = word1 * echo
    return words

In the following example, you will:

  • Define a lambda function echo_word using the variables word1 and echo. Replicate what the original function definition for echo_word() does above.
  • Call echo_word() with the string argument 'hey' and the value 5, in that order. Assign the call to result. Finally, print the result variable.
# Define echo_word as a lambda function: echo_word
echo_word = (lambda word1, echo: word1 * echo)

# Call echo_word: result
result = echo_word('hey', 5)

# Print result
print(result)

When we run the above code, it produces the following result:

heyheyheyheyhey

Try it for yourself.

To learn more about Lambda functions, please see this video from our course Python Data Science Toolbox (Part 1).

This content is taken from DataCamp’s Python Data Science Toolbox (Part 1) course by Hugo Bowne-Anderson.

Check out DataCamp's Python Functions Tutorial.

Introduction to Python

Beginner
4 hours
4,586,334
Master the basics of data analysis with Python in just four hours. This online course will introduce the Python interface and explore popular packages.
See DetailsRight Arrow
Start Course

Intermediate Python

Beginner
4 hours
880,683
Level up your data science skills by creating visualizations using Matplotlib and manipulating DataFrames with pandas.

Python Data Science Toolbox (Part 1)

Beginner
3 hours
343,630
Learn the art of writing your own functions in Python, as well as key concepts like scoping and error handling.
See all coursesRight Arrow
Related

The 23 Top Python Interview Questions & Answers

Essential Python interview questions with examples for job seekers, final-year students, and data professionals.
Abid Ali Awan's photo

Abid Ali Awan

22 min

Working with Dates and Times in Python Cheat Sheet

Working with dates and times is essential when manipulating data in Python. Learn the basics of working with datetime data in this cheat sheet.
DataCamp Team's photo

DataCamp Team

Plotly Express Cheat Sheet

Plotly is one of the most widely used data visualization packages in Python. Learn more about it in this cheat sheet.
DataCamp Team's photo

DataCamp Team

0 min

Getting started with Python cheat sheet

Python is the most popular programming language in data science. Use this cheat sheet to jumpstart your Python learning journey.
DataCamp Team's photo

DataCamp Team

8 min

Python pandas tutorial: The ultimate guide for beginners

Are you ready to begin your pandas journey? Here’s a step-by-step guide on how to get started. [Updated November 2022]
Vidhi Chugh's photo

Vidhi Chugh

15 min

Python Iterators and Generators Tutorial

Explore the difference between Python Iterators and Generators and learn which are the best to use in various situations.
Kurtis Pykes 's photo

Kurtis Pykes

10 min

See MoreSee More