哈尔滨公司网站建设,优惠网站如何做,腾讯效果推广,抖音开放平台官网继续昨天的话题#xff0c;昨天我们实现完全的随抽取列表元素#xff0c;有一个问题就是可能几次会抽取同一个位置的元素#xff1a;1-50中随机抽取5个数值#xff0c;点击刷新#xff0c;就会出现不同的结果#xff0c;如上图可能会出现两个相同的数值#xff0c;如何确…继续昨天的话题昨天我们实现完全的随抽取列表元素有一个问题就是可能几次会抽取同一个位置的元素1-50中随机抽取5个数值点击刷新就会出现不同的结果如上图可能会出现两个相同的数值如何确保每次都能抽取到不同的元素两个思路每次抽取结束后被抽到的元素从列表中移除再进行下次抽取确保抽取的元素位置不重复我们今天要用到的是第二种我们用两个函数来确保取得非重复的位置List.Distinct获取非重复元素列表List.FirstN获取前几个元素昨天讲的产生随机整数的套路继续沿用我们来看自定义函数let 源 (l,n)List.Transform( List.FirstN( List.Distinct( List.Transform( {1..100}, (x)Number.IntegerDivide(Number.RandomBetween(0,List.Count(l)-1),1)) ), n), (x)l{x})in 源代码有点长我们分解来看最里层的List.Transform是产生一个随机整数的列表为了防止出现重复导致列表元素去重复后数量不够我们要求做100个随机数。具体的随机数的公式就不解释了参照昨天的内容。List.Distinct把这100个随机整数列表去重复。 List.FirstN取非重复整数列表的前n个元素。最外层的List.transform就是根据List.FirstN产生的地址取出列表l元素。这样大家是不是就能够了解这个函数的意思了。我们来看引用这个函数的结果我们从小写字母中随机抽取5个字母保证不重复。欢迎加入圈子学习更多Power Query相关的知识。