
Функции
min()иmax()позволяют находить минимальный и максимальный элементы в последовательности или между двумя и более аргументами.
Эти функции могут быть использованы с различными типами данных, такими как числа, строки и пользовательские объекты.
Синтаксис функций min() и max() следующий:
min(iterable, *[, key, default])
min(arg1, arg2, *args[, key])
max(iterable, *[, key, default])
max(arg1, arg2, *args[, key])iterable: Последовательность (например, список, кортеж или строка), элементы которой нужно сравнить.arg1, arg2, *args: Два или более аргументов для сравнения.key: (необязательный) Функция, которая используется для определения значения, по которому осуществляется сравнение.default: (необязательный) Значение, возвращаемое функциями, если последовательность пуста.Пример 1: Нахождение минимального и максимального числа в списке
numbers = [5, 3, 9, 1, 7]
minimum = min(numbers)
maximum = max(numbers)
print("Minimum:", minimum)
print("Maximum:", maximum)
#Minimum: 1
#Maximum: 9Пример 2: Нахождение минимальной и максимальной строки в списке
words = ["apple", "banana", "cherry"]
min_word = min(words)
max_word = max(words)
print("Min word:", min_word)
print("Max word:", max_word)
#Min word: apple
#Max word: cherryКлючевой аргумент key позволяет указать функцию для определения значения, по которому сравниваются элементы.
Пример 3: Нахождение строки с минимальной и максимальной длиной
words = ["apple", "banana", "cherry"]
shortest_word = min(words, key=len)
longest_word = max(words, key=len)
print("Shortest word:", shortest_word)
print("Longest word:", longest_word)
#Shortest word: apple
#Longest word: bananaПример 4: Нахождение минимального и максимального значения с использованием лямбда-функции
data = [{"value": 5}, {"value": 3}, {"value": 9}, {"value": 1}, {"value": 7}]
min_item = min(data, key=lambda x: x["value"])
max_item = max(data, key=lambda x: x["value"])
print("Min item:", min_item)
print("Max item:", max_item)
#Min item: {'value': 1}
#Max item: {'value': 9}Для использования функций min() и max() с пользовательскими объектами необходимо определить функцию сравнения с использованием ключевого аргумента key.
Пример 5: Нахождение минимального и максимального объекта в списке
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    def __repr__(self):
        return f"{self.name} ({self.age})"
people = [
    Person("Alice", 30),
    Person("Bob", 25),
    Person("Charlie", 35),
]
youngest = min(people, key=lambda x: x.age)
oldest = max(people, key=lambda x: x.age)
print("Youngest:", youngest)
print("Oldest:", oldest)
#Youngest: Bob (25)
#Oldest: Charlie (35)Мы рассмотрели функции min() и max(), которые позволяют находить минимальные и максимальные элементы в последовательностях и между аргументами. Мы изучили основной синтаксис этих функций и привели различные примеры их использования, такие как работа с числами, строками, использование ключевого аргумента key, а также применение функций с пользовательскими объектами.
Содержание: