Python min и max: поиск минимального и максимального значений

В Python функции minи maxиспользуются для поиска минимального и максимального значений из заданной коллекции элементов. Вот несколько способов использования этих функций с примерами кода:

Метод 1. Использование minи maxсо списком чисел:

numbers = [5, 2, 8, 1, 9]
minimum = min(numbers)
maximum = max(numbers)
print("Minimum:", minimum)
print("Maximum:", maximum)

Выход:

Minimum: 1
Maximum: 9

Метод 2: использование minи maxс несколькими аргументами:

a = 10
b = 5
c = 8
minimum = min(a, b, c)
maximum = max(a, b, c)
print("Minimum:", minimum)
print("Maximum:", maximum)

Выход:

Minimum: 5
Maximum: 10

Метод 3. Использование minи maxс ключевой функцией:

students = [
    {"name": "Alice", "age": 20},
    {"name": "Bob", "age": 18},
    {"name": "Charlie", "age": 22}
]
youngest_student = min(students, key=lambda s: s["age"])
oldest_student = max(students, key=lambda s: s["age"])
print("Youngest Student:", youngest_student["name"])
print("Oldest Student:", oldest_student["name"])

Выход:

Youngest Student: Bob
Oldest Student: Charlie

Метод 4. Использование minи maxс пользовательским классом:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __repr__(self):
        return f"Person(name={self.name}, age={self.age})"
people = [
    Person("Alice", 20),
    Person("Bob", 18),
    Person("Charlie", 22)
]
youngest_person = min(people, key=lambda p: p.age)
oldest_person = max(people, key=lambda p: p.age)
print("Youngest Person:", youngest_person.name)
print("Oldest Person:", oldest_person.name)

Выход:

Youngest Person: Bob
Oldest Person: Charlie