培训
列表函数
这些函数创建并操纵列表值。
名称 | 说明 |
---|---|
List.Count | 返回列表中的项数。 |
List.NonNullCount | 返回列表中不包括 null 值的项数 |
List.IsEmpty | 返回列表是否为空。 |
名称 | 说明 |
---|---|
List.Alternate | 返回列表,其中包含来自原始列表的基于 count、可选的 repeatInterval 和可选的 offset 交替变化的项。 |
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
。
可比较的数据类型包括:
- Number
- 持续时间
- DateTime
- Text
- 逻辑
- 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.Dates | 从起点开始,根据大小计数返回日期值列表,并将每个值加上一个增量。 |
List.DateTimes | 从起点开始,根据大小计数返回日期/时间值列表,并将每个值加上一个增量。 |
List.DateTimeZones | 从起点开始,根据大小计数返回时区值列表,并将每个值加上一个增量。 |
List.Durations | 从起点开始,根据大小计数返回持续时间值列表,并将每个值加上一个增量。 |
List.Generate | 生成值列表。 |
List.Numbers | 从初始处开始,根据大小计数返回数字列表,并加上一个增量。 增量默认为 1。 |
List.Random | 返回计数随机数列表,其中包含可选的种子参数。 |
List.Times | 从起点开始,根据大小计数返回时间值列表。 |
- Occurrence.First = 0;
- Occurrence.Last = 1;
- Occurrence.All = 2;
- Order.Ascending = 0;
- Order.Descending = 1;
可将列表值的相等条件指定为以下任一项:
- 一个函数值,它可以是:
- 一个键选择器,用于确定列表中要应用相等条件的值。
- 一个比较器函数,用于指定要应用的比较类型。 可以指定内置的比较器函数,请转到比较器函数。
- 一个列表值,它具有:
- 正好两项。
- 第一个元素是上面指定的键选择器。
- 第二个元素是上面指定的比较器。
有关详细信息和示例,请转到 List.Distinct。
可将比较条件提供为以下值之一:
- 用于指定排序顺序的一个数字值。 有关详细信息,请参阅排序顺序。
- 若要计算用于排序的键,可以使用具有 1 个参数的函数。
- 若要选择键并控制顺序,比较条件可以是包含键和顺序的列表。
- 若要完全控制比较,可以使用具有 2 个参数的函数,此函数将根据左输入和右输入之间的关系返回 -1、0 或 1。 Value.Compare 是可用于委托此逻辑的方法。
有关详细信息和示例,请转到 List.Sort。
替换操作由列表值指定。 此列表的每个项必须是:
- 仅有两项的一个列表值。
- 第一项是列表中要替换的旧值。
- 第二项是新值,它应替换列表中出现的所有旧值。