reduce() in Python
In Python, reduce() is a built-in function that applies a given function to the elements of an iterable, reducing them to a single value.
The syntax for reduce() is as follows:
Here's an example that demonstrates how to use reduce() to find the sum of a list of numbers:
Sum of the integers of num_list : 55 Sum of the integers of num_list with initial value 10 : 65
In this example, we use the reduce() function to apply an add function that returns the sum of two values to each pair of elements in the numbers list, resulting in the sum of all the elements.
Let us use the lambda function as the first argument of the reduce() function:
Let's break down how the reduce() function works for the example given:
The reduce() function takes two arguments: a function and an iterable. In this case, we use a lambda function lambda x, y: x * y as the function, and the numbers list as the iterable.
reduce() function with operator functions
We can make our code more concise and easier to read by using operator functions instead of lambda functions.
Here is an example to demonstrate the use of operator functions as the first argument of reduce function:
Sum of all elements in my_list1 : 15 Product of all elements in my_list1 : 120 Concatenated string by using operator.concat : ILoveJavatpoint Concatenated string by using operator.add : ILoveJavatpoint
This code shows how to use reduce() function and operator functions to perform mathematical and string operations on iterables in Python.
Understanding the different between reduce() and accumulate() functions:
The Python functools module provides the functions reduce() and accumulate(), both of which operate on iterables in ways that are comparable.
An example to understand the difference between accumulate() and reduce():
In this example, we have a list of numbers [1, 2, 3, 4, 5]. We use reduce() to calculate the product of all the numbers, which returns a single value of 120.
We also use accumulate() to calculate the product of all the numbers. However, instead of returning a single value, accumulate() returns an iterator that yields a sequence of intermediate results: [1, 2, 6, 24, 120].
So, the main difference between reduce() and accumulate() is that reduce() returns a single value that is the final output of the operation. In contrast, accumulate() returns an iterator that yields a sequence of intermediate results.
JavaTpoint offers too many high quality services. Mail us on h[email protected], to get more information about given services.
JavaTpoint offers college campus training on Core Java, Advance Java, .Net, Android, Hadoop, PHP, Web Technology and Python. Please mail your requirement at [email protected].
Duration: 1 week to 2 week