The min()
function returns the smallest item in an iterable. It can also be used to find the smallest item between two or more parameters.
Example
numbers = [9, 34, 11, -4, 27]
# find the smallest number
min_number = min(numbers)
print(min_number)
# Output: -4
The min()
function has two forms:
# to find the smallest item in an iterable
min(iterable, *iterables, key, default)
# to find the smallest item between two or more objects
min(arg1, arg2, *args, key)
1. min() with iterable arguments
min() Syntax
Here's the syntax of the min()
function
min(iterable, *iterables, key, default)
min() Parameters
- iterable - an iterable such as list, tuple, set, dictionary, etc.
- *iterables (optional) - any number of iterables; can be more than one
- key (optional) - key function where the iterables are passed and comparison is performed based on its return value
- default (optional) - default value if the given iterable is empty
min() Return Value
min()
returns the smallest element from an iterable.
Example 1: Get the smallest item in a list
number = [3, 2, 8, 5, 10, 6]
smallest_number = min(number);
print("The smallest number is:", smallest_number)
Output
The smallest number is: 2
If the items in an iterable are strings, the smallest item (ordered alphabetically) is returned.
Example 2: The smallest string in a list
languages = ["Python", "C Programming", "Java", "JavaScript"]
smallest_string = min(languages);
print("The smallest string is:", smallest_string)
Output
The smallest string is: C Programming
In the case of dictionaries, min()
returns the smallest key. Let's use the key
parameter so that we can find the dictionary's key having the smallest value.
Example 3: min() in dictionaries
square = {2: 4, 3: 9, -1: 1, -2: 4}
# the smallest key
key1 = min(square)
print("The smallest key:", key1) # -2
# the key whose value is the smallest
key2 = min(square, key = lambda k: square[k])
print("The key with the smallest value:", key2) # -1
# getting the smallest value
print("The smallest value:", square[key2]) # 1
Output
The smallest key: -2 The key with the smallest value: -1 The smallest value: 1
In the second min()
function, we have passed a lambda function to the key
parameter.
key = lambda k: square[k]
The function returns the values of dictionaries. Based on the values (rather than the dictionary's keys), the key having the minimum value is computed.
Few Notes:
- If we pass an empty iterator, a
ValueError
exception is raised. To avoid this, we can pass the default parameter. - If we pass more than one iterators, the smallest item from the given iterators is returned.
2. min() without iterable
min() Syntax
Here's the syntax of min() function
min(arg1, arg2, *args, key)
min() Parameters
- arg1 - an object; can be numbers, strings, etc.
- arg2 - an object; can be numbers, strings, etc.
- *args (optional) - any number of objects
- key (optional) - key function where each argument is passed, and comparison is performed based on its return value
Basically, the min()
function can find the smallest item between two or more objects.
min() Return Value
min()
returns the smallest argument among the multiple arguments passed to it.
Example 4: Find the minimum among the given numbers
result = min(4, -5, 23, 5)
print("The minimum number is:", result)
Output
The minimum number is -5
If you need to find the largest item, you can use the Python max() function.