Поделиться через


Функции для работы со списками

Эти функции создают и управляют значениями списка.

Информация

Имя Описание
List.Count Возвращает количество элементов в списке.
List.NonNullCount Возвращает количество элементов в списке, за исключением значений NULL
List.Isempty Возвращает значение, пусто ли список.

Выбор

Имя Описание
List.Alternate Возвращает список с элементами, альтернативными из исходного списка на основе количества, необязательного повтораInterval и необязательного смещения.
List.Buffer Буферизирует список в памяти. Результатом этого вызова является стабильный список, то есть он будет иметь детерминированное число и порядок элементов.
List.Distinct Фильтрует список вниз, удаляя дубликаты. Для управления сравнением равенства можно указать необязательное значение критерия уравнения. Выбирается первое значение из каждой группы равенства.
List.FindText Выполняет поиск списка значений, включая поля записи, для текстового значения.
List.First Возвращает первое значение списка или указанное значение по умолчанию, если пусто. Возвращает первый элемент в списке или необязательное значение по умолчанию, если список пуст. Если список пуст и значение по умолчанию не указано, функция возвращается.
List.FirstN Возвращает первый набор элементов в списке, указав количество возвращаемых элементов или соответствующее условие countOrCondition.
List.InsertRange Вставляет элементы из значений по указанному индексу в входном списке.
List.IsDistinct Возвращает, отличается ли список.
List.Last Возвращает последний набор элементов в списке, указав количество возвращаемых элементов или соответствующее условие countOrCondition.
List.LastN Возвращает последний набор элементов в списке, указав количество возвращаемых элементов или соответствующее условие.
List.MatchesAll Возвращает значение true, если все элементы в списке соответствуют условию.
List.MatchesAny Возвращает значение true, если любой элемент в списке соответствует условию.
List.Positions Возвращает список позиций для входного списка.
List.Range Возвращает элементы счетчика, начиная с смещения.
List.Select Выбирает элементы, соответствующие условию.
List.Single Возвращает один элемент списка или вызывает Expression.Error, если список содержит более одного элемента.
List.SingleOrDefault Возвращает один элемент из списка.
List.Skip Пропускает первый элемент списка. При указании пустого списка возвращается пустой список. Эта функция принимает необязательный параметр countOrCondition для поддержки пропуска нескольких значений.

Функции преобразования

Имя Описание
List.Accumulate Накапливает результат из списка. Начиная с начального значения, эта функция применяет функцию аккумулятора и возвращает окончательный результат.
List.Combine Объединяет список списков в один список.
List.ConformToPageReader Эта функция предназначена только для внутреннего использования.
List.RemoveRange Возвращает список, который удаляет элементы счетчика, начиная с смещения. Число по умолчанию — 1.
List.RemoveFirstN Возвращает список с указанным числом элементов, удаленных из списка, начиная с первого элемента. Число удаленных элементов зависит от необязательного параметра countOrCondition.
List.RemoveItems Удаляет элементы из списка list1, присутствующие в списке list2, и возвращает новый список.
List.RemoveLastN Возвращает список с указанным числом элементов, удаленных из списка, начиная с последнего элемента. Число удаленных элементов зависит от необязательного параметра countOrCondition.
List.Repeat Возвращает список, повторяющий содержимое входного списка.
List.ReplaceRange Возвращает список, который заменяет указанное количество значений в списке на список replaceWith, начиная с индекса.
List.RemoveMatchingItems Удаляет все вхождения заданных значений в списке.
List.RemoveNulls Удаляет значения NULL из списка.
List.ReplaceMatchingItems Заменяет вхождения существующих значений в списке новыми значениями с помощью предоставленного equationCriteria. Старые и новые значения предоставляются параметрами replacements. Для управления сравнениями равенства можно указать необязательное значение критерия уравнения. Дополнительные сведения об операциях замены и критериях равенства см. в разделе Значения параметров.
List.ReplaceValue Выполняет поиск по списку значений и заменяет каждое вхождение значением замены.
List.Reverse Возвращает список, который изменяет элементы в списке.
List.Split Разбивает указанный список на список списков, используя указанный размер страницы.
List.Transform Выполняет функцию для каждого элемента в списке и возвращает новый список.
List.TransformMany Возвращает список, элементы которого проецируются из входного списка.

Функции членства

Так как все значения можно проверить на равенство, эти функции могут работать над разнородными списками.

Имя Описание
List.AllTrue Возвращает значение true, если все выражения в списке имеют значение true
List.AnyTrue Возвращает значение true, если любое выражение в списке имеет значение true
List.Contains Возвращает значение true, если значение найдено в списке.
List.ContainsAll Возвращает значение true, если все элементы в значениях находятся в списке.
List.ContainsAny Возвращает значение true, если любой элемент в значениях найден в списке.
List.PositionOf Находит первое вхождение значения в списке и возвращает его положение.
List.PositionOfAny Находит первое вхождение любого значения в значениях и возвращает его положение.

Установка операций

Имя Описание
List.Difference Возвращает элементы в списке 1, которые не отображаются в списке 2. Поддерживаются повторяющиеся значения.
List.Intersect Возвращает список из списка списков и пересекает общие элементы в отдельных списках. Поддерживаются повторяющиеся значения.
List.Union Возвращает список из списка списков и союзов элементов в отдельных списках. Возвращенный список содержит все элементы в любых входных списках. Повторяющиеся значения сопоставляются как часть Союза.
List.Zip Возвращает список списков, объединяющих элементы в одной позиции.

Заказ

Функции упорядочивания выполняют сравнения. Все значения, которые сравниваются, должны быть сопоставимы друг с другом. Это означает, что все они должны поступать из одного типа данных (или включать значение NULL, которое всегда сравнивает наименьшее значение). В противном случае возникает исключение Expression.Error.

Сравнимые типы данных:

  • Число
  • Длительность
  • Дата и время
  • Текст
  • Логический
  • Null;
Имя Описание
List.Max Возвращает максимальный элемент списка или необязательное значение по умолчанию, если список пуст.
List.MaxN Возвращает максимальные значения в списке. Необходимо указать число возвращаемых значений или условие фильтрации.
List.Median Возвращает элемент медиана из списка.
List.Min Возвращает минимальный элемент в списке или необязательное значение по умолчанию, если список пуст.
List.MinN Возвращает минимальные значения в списке. Можно указать число возвращаемых значений или условие фильтрации.
List.Sort Возвращает отсортированный список с помощью критерия сравнения.
List.Percentile Возвращает один или несколько выборок процентилей, соответствующих заданным вероятностям.

Средние значения

Эти функции работают над однородными списками чисел, даты и времени и длительности.

Имя Описание
List.Average Возвращает среднее значение из списка в типе данных значений в списке.
List.Mode Возвращает элемент, который чаще всего отображается в списке.
List.Modes Возвращает все элементы, которые отображаются с одинаковой максимальной частотой.
List.StandardDeviation Возвращает стандартное отклонение от списка значений. List.StandardDeviation выполняет оценку на основе выборки. Результатом является число чисел, а также длительность для даты и времени и длительности.

Дополнение

Эти функции работают над однородными списками чисел или длительности.

Имя Описание
List.Sum Возвращает сумму из списка.

Числовые данные

Эти функции работают только над числами.

Имя Описание
List.Covariance Возвращает ковариантность из двух списков в виде числа.
List.Product Возвращает продукт из списка чисел.

Генераторы

Эти функции создают список значений.

Имя Описание
List.Date Возвращает список значений даты из числа размеров, начиная с начала и добавляя добавочное значение к каждому значению.
List.DateTimes Возвращает список значений даты и времени из числа размеров, начиная с начала и добавляя добавочное значение к каждому значению.
List.DateTimeZones Возвращает список значений даты и времени из числа размеров, начиная с начала и добавляя добавочное значение к каждому значению.
List.Durations Возвращает список значений длительности из числа размеров, начиная с начала и добавляя к каждому значению добавочное значение.
List.Generate Создает список значений.
List.Numbers Возвращает список чисел из числа размеров, начиная с начального значения, и добавляет добавочный. Приращение по умолчанию — 1.
List.Random Возвращает список случайных чисел с необязательным параметром начального значения.
List.Times Возвращает список значений времени количества размеров, начиная с начала.

Значения параметров

Спецификация вхождения

Порядок сортировки

Критерии уравнения

Критерий равенства для списка значений можно указать как:

  • Значение функции, которое имеет значение:
    • селектором ключа, определяющим значение в списке для применения критериев равенства;
    • Функция сравнения, используемая для указания типа применяемого сравнения. Встроенные функции сравнения можно указать. См. сведения о функциях сравнения.
  • Значение списка со следующими значениями:
    • ровно два элемента.
    • Первый элемент является селектором ключа, как указано выше.
    • Второй элемент — это сравнение, как указано выше.

Дополнительные сведения и примеры см. в разделе List.Distinct.

Критерии сравнения

Критерий сравнения можно указать как одно из следующих значений:

  • Числовое значение, указывающее порядок сортировки. Дополнительные сведения см. в статье о порядке сортировки.
  • Чтобы вычислить ключ, используемый для сортировки, можно использовать функцию с одним аргументом.
  • Чтобы выбрать ключ и порядок управления, критерий сравнения может быть списком, содержащим ключ и порядок.
  • Чтобы полностью управлять сравнением, можно использовать функцию с двумя аргументами, которая возвращает –1, 0 или 1, учитывая связь между левыми и правыми входными данными. Value.Compare — это метод, который можно использовать для делегирования этой логики.

Дополнительные сведения и примеры см. в разделе List.Distinct.

Операции замены

Операции замены задаются значением списка. Каждый элемент этого списка должен быть:

  • значением списка, состоящим из двух элементов.
  • Первый элемент — это старое значение в списке, которое необходимо заменить.
  • Второй элемент является новым значением, которое должно заменить все вхождения старого значения в списке.