Ѐункция min python: Ѐункция min() Π² Python, минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Ѐункция min() Π² Python, минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта.

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Бинтаксис:
min(iterable, *[, key, default])
min(arg1, arg2, *args[, key])
ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:
  • iterable — ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚,
  • key — Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ (ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для порядка сравнСния элСмСнтов ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Ѐункция вычисляСтся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·.
  • default — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ссли ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ окаТСтся пустым,
  • arg1...argN — ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚,
  • *args — список ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².
Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅:
  • наимСньшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.
ОписаниС:

Ѐункция min() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта ΠΈΠ· ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ»ΠΈ наимСньшСС ΠΈΠ· Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

  • Если ΡƒΠΊΠ°Π·Π°Π½ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ (список, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ ΠΈ Ρ‚. Π΄.).
  • Если Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ пСрСдаСтся Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, возвращаСтся наимСньшСС ΠΈΠ· Π½ΠΈΡ….
  • Π’ случаС, ΠΊΠΎΠ³Π΄Π° минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ сразу нСсколько Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Ρ‚ΠΎ возвращаСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠΎ порядку элСмСнт с наимСньшим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. Π­Ρ‚ΠΎ согласуСтся с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ инструмСнтами сохранСния ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ сортировки, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ sorted(iterable, key=keyfunc, reverse=True)[0] ΠΈ heapq.nlargest(1, iterable, key=keyfunc)

АргумСнт key — функция подобная Ρ‚ΠΎΠΉ, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ списков list.sort(). Ѐункция ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для упорядочивания элСмСнтов.

>>> x = ['4', '11', '6', '31']
# функция `min` сравниваСт
# числа ΠΊΠ°ΠΊ строки
>>> min(x)
# '11'
# функция 'key=lambda i: int(i)' примСняСтся
# ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту списка 'x', прСобразуя 
# строки Π² Ρ‚ΠΈΠΏ 'int' ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ функция `min`
# сравниваСт элСмСнты списка ΠΊΠ°ΠΊ числа.
>>> min(x, key=lambda i: int(i))
# '4'
# ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 'key' Π²Ρ‹Π±ΠΎΡ€
# списка с наимСньшСй суммой элСмСнтов 
>>> min([1,2,3,4], [3,4,5], key=sum)
# [1,2,3,4]

АргумСнт default ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ, Ссли ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст. Если итСрация пуста ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Ρ‚ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка ValueError.

# Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
>>> min([], default=0)
# 0
>>> min([])
# Traceback (most recent call last):
#   File "<stdin>", line 1, in <module>
# ValueError: min() arg is an empty sequence

Ѐункция min() сравниваСт элСмСнты, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ <. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, всС ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π² Π½ΠΈΡ… значСния Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ сопоставимы Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, ΠΈΠ½Π°Ρ‡Π΅ бросаСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ TypeError

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° тСкстовых строк, Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… строк ΠΈΠ»ΠΈ Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… массивов, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ списка символов, минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ исходя ΠΈΠ· порядка слСдования символов, Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ.

>>> x = list('abcdifgh')
>>> min(x)
# 'a'

ИзмСнСно Π² Python 3.8: АргумСнт key ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ None.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ нахоТдСния минимального элСмСнта Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

  • НахоТдСниС самой ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΉ строки Π² спискС строк;
  • НахоТдСниС минимального значСния Π² спискС строк чисСл;
  • НахоТдСниС минимального значСния Ρƒ Π²Ρ‚ΠΎΡ€Ρ‹Ρ… элСмСнтов ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°;
  • ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ индСкса Ρƒ минимального значСния Π² спискС;
  • Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с числами, записанными Π² строкС Π² описании Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ max().
# использованиС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²
>>> min(5, 3, 6, 5, 6)
# 3
# использованиС Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° списка 
>>> min([1.2, 1.3, 1.5, 2, 5.52])
# 1.2
# ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ списка
# ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ списка 'x' происходит Π΅Π³ΠΎ распаковка
>>> x = (1.2, 1.3, 1.5, 2, 5.52)
>>> min(5, 3, 5, *x)
# 1.2

НахоТдСниС самой ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΉ строки Π² спискС строк.

НайдСм ΡΠ°ΠΌΡƒΡŽ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΡƒΡŽ строку. Π’ качСствС ΠΊΠ»ΡŽΡ‡Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ len(). Она посчитаСт количСство символов Π² строкС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Π° функция min() Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚ минимальноС число. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ списком ['Jul', 'John', 'Vicky'], Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅.

>>> min('Jul', 'John', 'Vicky', key=len)
# 'Jul'

НахоТдСниС

min() Π² спискС строк, записанных ΠΊΠ°ΠΊ Ρ†Π΅Π»Ρ‹Π΅ числа

Π•ΡΡ‚ΡŒ список строк чисСл ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ Ρ†Π΅Π»Ρ‹ΠΌΠΈ числами? Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС функция min() Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚ наимСньшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ списка исходя ΠΈΠ· лСксикографичСской сортировки. ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ lambda i: int(i) Π² качСствС ΠΊΠ»ΡŽΡ‡Π° key, которая ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ строчныС элСмСнты списка Π² Ρ†Π΅Π»Ρ‹Π΅ числа, Ρ‚ΠΎΠ³Π΄Π° функция min() Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚ Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ.

>>> x = ['4', '11', '6', '31']
# Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅
>>> min(x)
# '11'
# ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅
>>> min(x, key = lambda i: int(i))
# '4'

НахоТдСниС

min() ΠΏΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ элСмСнту ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° для

НапримСр Π΅ΡΡ‚ΡŒ список ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт. Но ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ наимСньшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт! Для этого ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ lambda i : i[1] Π² качСствС ΠΊΠ»ΡŽΡ‡Π°

key, которая ΡƒΠΊΠ°ΠΆΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min(), ΠΈΠ· ΠΊΠ°ΠΊΠΈΡ… элСмСнтов ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

>>> x = [(1,3), (2,4), (1,9), (4,1)]
# происходит сравнСниС ΠΏΠΎ 
# ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ элСмСнтам ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ° 
>>> min(x)
# (1,3)
# мСняСм порядок сравнСния
>>> x = [(1,3), (2,4), (1,9), (4,1)]
>>> min(x, key=lambda i : i[1])
# (4,1)

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ индСкса Ρƒ минимального значСния Π² спискС.

Допустим Π΅ΡΡ‚ΡŒ список чисСл ΠΈ стоит Π·Π°Π΄Π°Ρ‡Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ индСкс минимального значСния Π² этом спискС.

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Ρ‚ΡŒ список, Ρ‚.Π΅. ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ — индСкс/число, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min(), Π° Π² качСствС ΠΊΠ»ΡŽΡ‡Π° этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ key=lambda i : i[1].

>>> lst = [5, 3, 1, 0, 9, 7]
# ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΡƒΠ΅ΠΌ список 
>>> lst_num = list(enumerate(lst, 0))
# получился список ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… 
# ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт - это индСкс значСния списка, 
# Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт - само Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ списка
>>> lst_num
# [(0, 5), (1, 3), (2, 1), (3, 0), (4, 9), (5, 7)]
# Π½Π°ΠΉΠ΄Π΅ΠΌ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ (ΠΈΠ· Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ значСния ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ)
>>> t_min = min(lst_num, key=lambda i : i[1])
>>> t_min
# (3, 0)
# индСкс минимального значСния списка
>>> t_min[0]
# 3

ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ поиска максимального ΠΈ минимального элСмСнта

Ѐункция min() Π² Python Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ наимСньший элСмСнт Π² ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ наимСньший ΠΈΠ· Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Бинтаксис Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min():

min(iterable, *[, key, default])
min(arg1, arg2, *args[, key])
  • Если Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ строка, список, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈ Ρ‚.Π΄. возвращаСтся наимСньший элСмСнт Π² ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅.
  • Если прСдоставлСно Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ наимСньший ΠΈΠ· Π½ΠΈΡ….
  • ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для опрСдСлСния наимСньшСго элСмСнта. Π­Ρ‚ΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΈ Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΊΠΎΠ³Π΄Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ настраиваСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ.
  • АргумСнт ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ, Ссли прСдоставлСнный ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст. Если ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ValueError.
  • Если Π½Π°ΠΉΠ΄Π΅Π½ΠΎ нСсколько Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΠΈΡ… элСмСнтов, возвращаСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

  1. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min
  2. Min со строкой
  3. Min с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ
  4. Min со списком
  5. Π‘ настраиваСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ
  6. Π‘ пустой ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  7. Π‘ нСсколькими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ
  8. Π‘ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ
  9. Π‘ нСсколькими итСрациями
  10. Π‘ нСсколькими итСрациями ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²
  11. Max со строкой
  12. Max с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ
  13. Max list
  14. Max с настраиваСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ
  15. Π‘ пустой ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  16. Π‘ нСсколькими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ
  17. Π‘ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ
  18. Π‘ нСсколькими итСрациями
  19. Π‘ нСсколькими итСрациями ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²
  20. РСзюмС

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min() Π² python .

Min со строкой

Когда функция min() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ со строковым Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ, возвращаСтся символ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Unicode.

s = 'abcC'
print(min(s))
for c in s:
    print(c, 'unicode value =', ord(c))

Π’Ρ‹Π²ΠΎΠ΄:

C
a unicode value = 97
b unicode value = 98
c unicode value = 99
C unicode value = 67

Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ord() для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ Unicode символов Π² строкС.

Min с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ

tuple_numbers = (1, 2, 3, 4)
print(min(tuple_numbers))

Π’Ρ‹Ρ…ΠΎΠ΄: 1.

Min со списком

list_numbers = [1, 2, 3, -4]

print(min(list_numbers))

Π’Ρ‹Ρ…ΠΎΠ΄: -4.

Π‘ настраиваСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ

Когда ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ min() с настраиваСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для сравнСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

class Data:
    id = 0

    def __init__(self, i):
        self.id = i

    def __str__(self):
        return 'Data[%s]' % self.id


def get_data_id(data):
    return data.id


# min() with objects and key argument
list_objects = [Data(1), Data(2), Data(-10)]

print(min(list_objects, key=get_data_id))

Π’Ρ‹Π²ΠΎΠ΄: Π”Π°Π½Π½Ρ‹Π΅ [-10].

Если ΠΌΡ‹ Π½Π΅ прСдоставим ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

TypeError: '

Π‘ пустой ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

print(min([], default=20))

Π’Ρ‹Ρ…ΠΎΠ΄: 20.

Π‘ нСсколькими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ

print(min(1, 2, 3, 4))

Π’Ρ‹Ρ…ΠΎΠ΄: 1.

Π‘ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ

def str_length(s):
    return len(s)


print(min('a', 'abc', 'b', key=str_length))

Π’Ρ‹Ρ…ΠΎΠ΄: a.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ Β«aΒ», ΠΈ Β«bΒ» ΡΠ²Π»ΡΡŽΡ‚ΡΡ наимСньшими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ, поэтому ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Β«aΒ» возвращаСтся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ min().

Π‘ нСсколькими итСрациями

x1 = [10, 20, 30]
x2 = [5, 15, 40, 25]

print(min(x1, x2, key=len))

Π’Ρ‹Π²ΠΎΠ΄: [10, 20, 30].

Если ΠΌΡ‹ Π½Π΅ прСдоставим ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Π²Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ [5, 15, 40, 25]. Π­Ρ‚ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ сравнСниС Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΡ…ΡΡ элСмСнтов ΠΎΠ΄ΠΈΠ½ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ. Когда Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½ элСмСнт с мСньшим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½Π° итСрация с этим элСмСнтом.

Π‘ нСсколькими итСрациями ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

x1 = [Data(10), Data(20), Data(30)]
x2 = [Data(5), Data(15), Data(40), Data(25)]

min_list = min(x1, x2, key=len)
for x in min_list:
    print(x)

Π’Ρ‹Π²ΠΎΠ΄:

Data[10]
Data[20]
Data[30]

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ с нСсколькими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Если ΠΌΡ‹ Π½Π΅ ΡƒΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ сообщСниС ΠΎΠ± ошибкС, ΠΊΠ°ΠΊ TypeError: β€˜. РаньшС ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π» с цСлочислСнными элСмСнтами, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ > and <.

Ѐункция min() Π² Python ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ наимСньший элСмСнт Π² повторяСмом ΠΈΠ»ΠΈ наимСньшСм элСмСнтС ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π°ΡˆΡƒ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для сравнСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ python max().

Ѐункция max() Π² Python Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ самый большой элСмСнт Π² ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ ΠΈΠ»ΠΈ самый большой ΠΈΠ· Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Бинтаксис Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ max():

max(iterable, *[, key, default])
max(arg1, arg2, *args[, key])
  • Если Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ строка, список, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈ Ρ‚.Π΄. ВозвращаСтся самый большой элСмСнт Π² ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ.
  • Если прСдоставлСно Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ самый большой ΠΈΠ· Π½ΠΈΡ….
  • ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для опрСдСлСния самого большого элСмСнта. Π­Ρ‚ΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΈ Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΊΠΎΠ³Π΄Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ настраиваСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ.
  • АргумСнт ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ, Ссли прСдоставлСнный ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст. Если ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ValueError.
  • Если Π½Π°ΠΉΠ΄Π΅Π½ΠΎ нСсколько Π½Π°ΠΈΠ±ΠΎΠ»ΡŒΡˆΠΈΡ… элСмСнтов, возвращаСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ max().

Max со строкой

Когда функция max() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ со строковым Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ, возвращаСтся символ с ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Unicode.

s = 'abcCba'
print(max(s))
print('c' > 'C')

Π’Ρ‹Π²ΠΎΠ΄:

c
True

Max с ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ

tuple_numbers = (1, 2, 3, 4)
print(max(tuple_numbers))

Π’Ρ‹Ρ…ΠΎΠ΄: 4.

Max list

list_numbers = [1, 2, 3, -4]

print(max(list_numbers))

Π’Ρ‹Ρ…ΠΎΠ΄: 3.

Max с настраиваСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ

Когда ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ max() с настраиваСмыми ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для сравнСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

class Data:
    id = 0

    def __init__(self, i):
        self.id = i

    def __str__(self):
        return 'Data[%s]' % self.id


def get_data_id(data):
    return data.id


# max() with objects and key argument
list_objects = [Data(1), Data(2), Data(-10)]

print(max(list_objects, key=get_data_id))

Π’Ρ‹Π²ΠΎΠ΄: Π”Π°Π½Π½Ρ‹Π΅ [2].

Если ΠΌΡ‹ Π½Π΅ прСдоставим ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

TypeError: '>' not supported between instances of 'Data' and 'Data'

Π‘ пустой ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

print(max([], default=20))

Π’Ρ‹Ρ…ΠΎΠ΄: 20.

Π‘ нСсколькими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ

print(max(1, 2, 3, 4))

Π’Ρ‹Ρ…ΠΎΠ΄: 4.

Π‘ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ

def str_length(s):
    return len(s)


print(max('a', 'abc', 'ab', key=str_length))

Π’Ρ‹Ρ…ΠΎΠ΄: abc.

Π‘ нСсколькими итСрациями

x1 = [10, 20, 30]
x2 = [5, 15, 40, 25]

print(max(x1, x2, key=len))

Π’Ρ‹Π²ΠΎΠ΄: [5, 15, 40, 25].

Если ΠΌΡ‹ Π½Π΅ прСдоставим ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Π²Ρ‹Π²ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ [10, 20, 30]. Π­Ρ‚ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ сравнСниС Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами ΠΎΠ΄ΠΈΠ½ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ. Когда Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Π½ элСмСнт с большим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ, Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½Π° итСрация с этим элСмСнтом.

Π‘ нСсколькими итСрациями ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

x1 = [Data(10), Data(20), Data(30)]
x2 = [Data(5), Data(15), Data(40), Data(25)]

max_list = max(x1, x2, key=len)
for x in max_list:
    print(x)

Π’Ρ‹Π²ΠΎΠ΄:

Data[5]
Data[15]
Data[40]
Data[25]

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ с нСсколькими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Если ΠΌΡ‹ Π½Π΅ ΡƒΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ сообщСниС ΠΎΠ± ошибкС ΠΊΠ°ΠΊ TypeError: β€˜>’ Π½Π΅ поддСрТиваСтся ΠΌΠ΅ΠΆΠ΄Ρƒ экзСмплярами β€˜Data’ ΠΈ β€˜Data’. РаньшС ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π» с цСлочислСнными элСмСнтами, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ > and <.

РСзюмС

Ѐункция Python max() ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ самый большой элСмСнт Π² повторяСмом ΠΈΠ»ΠΈ самом большом элСмСнтС ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π°ΡˆΡƒ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для сравнСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°.

Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Python?

Π’ этом ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Python min. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Python, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ max(), len(), abs() ΠΈ Ρ‚. Π΄. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π±Π΅Π· ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° модуля ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

  • Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ функция min() Π² Python?
  • Бинтаксис Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python min()
  • ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min() с ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ
  • ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min() с нСсколькими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ
  • Π—Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ мысли

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ функция min() Π² Python?

Ѐункция Python min() Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° наимСньшСго элСмСнта Π² ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для поиска наимСньшСго элСмСнта ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€: print(min(2, -1.0, 30, -9))

Бинтаксис для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python min()

Ѐункция min() записываСтся Π² Π΄Π²ΡƒΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ…:

1. Бинтаксис для нахоТдСния наимСньшСго элСмСнт Π² ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ

 ΠΌΠΈΠ½(ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ, *ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ, ΠΊΠ»ΡŽΡ‡, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ) 

Π°. ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ — ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ; ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ списком, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ, Π½Π°Π±ΠΎΡ€ΠΎΠΌ, словарСм ΠΈ Ρ‚. Π΄.
b. *iterables (Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ) — любоС количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ; ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ.
Π². ΠΊΠ»ΡŽΡ‡ (Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ) β€” ΠΊΠ»ΡŽΡ‡Π΅Π²Π°Ρ функция, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ выполняСтся сравнСниС Π½Π° основС Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния.
Π΄. ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ) β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ссли Π΄Π°Π½Π½Ρ‹ΠΉ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст.

2. Бинтаксис для поиска наимСньшСго элСмСнта ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ

 min(arg1, arg2, *args, key) 
Π°. arg1 — ΠΎΠ±ΡŠΠ΅ΠΊΡ‚; ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ числами, строками ΠΈ Ρ‚. Π΄.
b. arg2 — ΠΎΠ±ΡŠΠ΅ΠΊΡ‚; ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ числами, строками ΠΈ Ρ‚. Π΄.
c. *args (Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ) — любоС количСство ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².
Π΄. ΠΊΠ»ΡŽΡ‡ (Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ) — ΠΊΠ»ΡŽΡ‡Π΅Π²Π°Ρ функция, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ пСрСдаСтся ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, ΠΈ сравнСниС выполняСтся Π½Π° основС Π΅Π³ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния.

ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min() с ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ

Поиск наимСньшСго элСмСнта Π² строкС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python min()

Если элСмСнтами ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ строки, Π² качСствС Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… возвращаСтся самый Ρ€Π°Π½Π½ΠΈΠΉ элСмСнт Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎΠΌ порядкС.

Π’Π²ΠΎΠ΄:
 языков = ["испанский", "английский", "французский", "ΠΈΡ‚Π°Π»ΡŒΡΠ½ΡΠΊΠΈΠΉ"]
small_string = ΠΌΠΈΠ½ (языки)
       
print("Бамая малСнькая строка Π² языках:", small_string)
 
Π’Ρ‹Π²ΠΎΠ΄:
 НаимСньшая строка Π² языках: English 

Поиск наимСньшСго элСмСнта Π² спискС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python min()

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ возьмСм Π²Π²ΠΎΠ΄ Π² Π²ΠΈΠ΄Π΅ списка с цСлочислСнными значСниями. И с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min() ΠΌΡ‹ Π½Π°ΠΉΠ΄Π΅ΠΌ наимСньшСС Ρ†Π΅Π»ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² спискС.

Π’Π²ΠΎΠ΄:
 число = [3, -2, 1, 15, 10, 0,6]
small_num = ΠΌΠΈΠ½ (число)
print("Π‘Π°ΠΌΠΎΠ΅ малСнькоС число:", small_num)
       
 
Π’Ρ‹Π²ΠΎΠ΄:
 НаимСньшСС число: -2 

Поиск наимСньшСго ΠΊΠ»ΡŽΡ‡Π° ΠΈ значСния Π² словарях с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python min()

Для словарСй ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠ°ΠΊ наимСньший ΠΊΠ»ΡŽΡ‡, Ρ‚Π°ΠΊ ΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ ΠΏΠ°Ρ€Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Π’Π²ΠΎΠ΄:
 sample_dict = {1:2, 3:4, -5:6, -7:8}
# Π½Π°ΠΉΡ‚ΠΈ самый малСнький ΠΊΠ»ΡŽΡ‡
key_one = ΠΌΠΈΠ½ (sample_dict)
print("Π‘Π°ΠΌΡ‹ΠΉ малСнький ΠΊΠ»ΡŽΡ‡ Π² sample_dict:", key_one)
# Π½Π°ΠΉΡ‚ΠΈ ΠΊΠ»ΡŽΡ‡, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ наимСньшСС
key_two = min(sample_dict, key = lambda k: sample_dict[k])
print("ΠšΠ»ΡŽΡ‡ с наимСньшим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π² sample_dict:", key_two)
# ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ наимСньшСго значСния
print("НаимСньшСС Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅:", sample_dict[key_two])
         
Π’Ρ‹Π²ΠΎΠ΄:
 НаимСньший ΠΊΠ»ΡŽΡ‡ Π² sample_dict: -7
ΠšΠ»ΡŽΡ‡ с наимСньшим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π² sample_dict: 1
НаимСньшСС Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅: 2 

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ использовали Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ min(), ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΈ лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌΡƒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ. Ѐункция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ значСния словарСй. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, вмСсто самих ΠΊΠ»ΡŽΡ‡Π΅ΠΉ вычисляСтся ΠΊΠ»ΡŽΡ‡ с наимСньшим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ.

ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ min() с нСсколькими Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ Π²Ρ‹Π·Π²Π°Π»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ min() ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² для ΠΎΡ†Π΅Π½ΠΊΠΈ. Ѐункция Python min() ΠΎΡ†Π΅Π½ΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΈ Π·Π°Ρ‚Π΅ΠΌ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ наимСньшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π’Π²ΠΎΠ΄:
 ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ(ΠΌΠΈΠ½(2, -1.0, 30, -9))
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (ΠΌΠΈΠ½ ("f", "l", "e", "x", "i"))
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (ΠΌΠΈΠ½ (7,14, -1,12, 7,66))
 
Π’Ρ‹Π²ΠΎΠ΄:
 -9
Π΅
-1.12 
ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅:
Когда ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ пустой ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ValueError. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ этого, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

 print(min([])) # здСсь пустая итСрация Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ValueError
# РСшСниС
print(min([], default=0)) # ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅ ошибки со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 
Если пСрСдаСтся Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, возвращаСтся наимСньший элСмСнт ΠΈΠ· Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ².

 #Π’Π²ΠΎΠ΄:
список_один = [11,12,13]
list_two = [2, 4, 6, 8, 10, 12]
min_val = min(list_one, list_one, key = len)
print("МинимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅: ", min_val)
  
#Π’Ρ‹Ρ…ΠΎΠ΄:
МинимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅: [11, 12, 13] 
Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ возвращаСтся минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π΄Π»ΠΈΠ½Ρ‹ списка, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ примСняСтся ΠΊΠ»ΡŽΡ‡=len.

Π—Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ мысли

ΠœΡ‹ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python min(). ΠŸΡ€ΠΈ нСобходимости ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ min() ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊΠΎΠΌΡƒ ΠΊΠ°ΠΊ список, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ ΠΈ Ρ‚. Π΄. Π’ Python Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ функция max(), которая ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΌ Π½Π°ΠΉΡ‚ΠΈ наибольшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ срСди ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈΠ»ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ max() ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ здСсь.

Ѐункция Python min() β€” ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ наимСньший элСмСнт

ИспользованиС

Ѐункция min() ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΉΡ‚ΠΈ

  • наимСньшСС ΠΈΠ· Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ числа, строки ΠΈ Ρ‚. Π΄.)
  • наимСньший элСмСнт Π² ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, список, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΈ Ρ‚. Π΄.)

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ сравнСния для поиска минимального значСния.

Бинтаксис

ΠΌΠΈΠ½(Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅1,Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅2,Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅3… ,ΠΊΠ»ΡŽΡ‡)

9 0160 Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ
ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python min()
val1,val2,val3… ВрСбуСтся Π”Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для сравнСния
key Ѐункция для указания ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π² сравнСния.
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” НСт.

– Π˜Π›Π˜ –

min(ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ,ΠΊΠ»ΡŽΡ‡,ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ)

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python min()
ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π›ΡŽΠ±ΠΎΠΉ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ»ΠΈ нСсколькими элСмСнтами для сравнСния
key ΠΠ΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ѐункция для указания ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π² сравнСния.
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” НСт.
ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΠ΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ссли ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст.
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” Π›ΠΎΠΆΡŒ.

Найти ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, возвращаСтся наимСньшСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

 Ρ… = ΠΌΠΈΠ½(10, 20, 30)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ…)
# ΠžΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ² 10 

Если значСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ строками, возвращаСтся строка с наимСньшим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎΠΌ порядкС.

 x = ΠΌΠΈΠ½ («красный», Β«Π·Π΅Π»Π΅Π½Ρ‹ΠΉΒ», «синий»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ…)
# Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ синий Ρ†Π²Π΅Ρ‚ 

Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π΄Π²Π° значСния для сравнСния. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ TypeError.

Найти ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π² ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅

Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, список, ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, Π½Π°Π±ΠΎΡ€ ΠΈ Ρ‚. Π΄.), возвращаСтся наимСньший элСмСнт Π² этом ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅.

 Π” = [300, 500, 100, 400, 200]
Ρ… = ΠΌΠΈΠ½ (Π»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ…)
# ΠŸΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ 100 

Если ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка ValueError .

 Π» = []
Ρ… = ΠΌΠΈΠ½ (Π»)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ…)
# Π’Ρ€ΠΈΠ³Π³Π΅Ρ€Ρ‹ ValueError: min() arg - пустая ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ, Ссли прСдоставлСнный ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ пуст.

 # Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ '0'
Π› = []
Ρ… = ΠΌΠΈΠ½ (L, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ = '0')
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ…)
# Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ 0 

Поиск ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ сравнСния для поиска минимального значСния. ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ опрСдСляСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄ сравнСниСм.

НапримСр, для списка строк ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ key=len (встроСнная функция len()) Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΡΠ°ΠΌΡƒΡŽ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΡƒΡŽ строку.

 L = ['красный', 'Π·Π΅Π»Π΅Π½Ρ‹ΠΉ', 'синий']
Ρ… = ΠΌΠΈΠ½ (L, ΠΊΠ»ΡŽΡ‡ = Π΄Π»ΠΈΠ½Π°)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ…)
# ΠŸΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ красным Ρ†Π²Π΅Ρ‚ΠΎΠΌ 

Поиск ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠ° с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

 # Π£Π·Π½Π°ΠΉ, ΠΊΡ‚ΠΎ самый младший ΡƒΡ‡Π΅Π½ΠΈΠΊ
ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Π΅):
  return e[1] # Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ возраст
L = [('Бэм', 35),
    («Вомь», 25 Π»Π΅Ρ‚),
    (Β«Π‘ΠΎΠ±Β», 30)]
Ρ… = ΠΌΠΈΠ½ (L, ΠΊΠ»ΡŽΡ‡ = myFunc)
ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ (Ρ…)
# ΠžΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΈ ("Π’ΠΎΠΌ", 25) 

ΠšΠ»ΡŽΡ‡Π΅Π²Π°Ρ функция ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡ для сравнСния.

Поиск ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ лямбда-выраТСния

ΠšΠ»ΡŽΡ‡Π΅Π²Π°Ρ функция Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создана с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ лямбда-выраТСния. Π­Ρ‚ΠΎ позволяСт Π½Π°ΠΌ Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ΠžΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *