Сообщить об ошибке.

Функция bisect_left() модуля bisect в Python

Индекс вставки в отсортированный список слева

Синтаксис:

import bisect

bisect.bisect_left(a, x, lo=0, hi=len(a), *, key=None)

Параметры:

  • x - вставляемое значение,
  • a - список, куда вставляется значение x,
  • lo=0, hi=len(a) - используются для определения подмножества списка a (проще говоря это срез списка),
  • key=None - используется для извлечения ключа сравнения из каждого входного элемента (доступен с версии Python 3.10).

Возвращаемое значение:

Описание:

Функция bisect.bisect_left() находит индекс вставки элемента x в отсортированный список a, соблюдая при этом порядок сортировки.

Аргументы lo и hi могут использоваться для определения подмножества списка a, которое следует учитывать, по умолчанию используется весь список.

Если x уже присутствует в списке a, то точка вставки будет перед любыми существующими элементами (слева от них). Возвращаемое значение подходит для использования в качестве первого аргумента list.insert() при условии, что a уже отсортирован.

Возвращенная точка вставки i разделяет массив a на две половины, так что all(val < x for val in a[lo:i]) для левой стороны и all(val >= x for val in a[i:hi]) для правой стороны.

Аргумент key (доступна с версии Python 3.10) определяет ключевую функцию одного аргумента, которая используется для извлечения ключа сравнения из каждого входного элемента. Значение по умолчанию - None, это означает, что элементы сравниваются напрямую.

Примеры использования функции bisect.bisect_left(), смотрите в материале с общей информацией о модуле bisect.

Изменено в Python 3.10: Добавлен аргумент key.