python 生成随机红包

Posted lcawen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 生成随机红包相关的知识,希望对你有一定的参考价值。

假设红包金额为money,数量是num,并且红包金额money>=num*0.01

原理如下,从1~money*100的数的集合中,随机抽取num-1个数,然后对这些数进行排序,在排序后的集合前后分别插入0和money*100,组成新的集合

用新的集合,(后一个数-前一个数)/100得到红包的大小

然后使用红包的时候,从num个红包集合中随机拿一个,既是随机红包了

def redbags(money, num=10):
    import random
    choice = random.sample(range(1, money * 100), num - 1)
    choice.extend([0,money*100])
    choice.sort()
    return [(choice[i + 1] - choice[i]) / 100 for i in range(num)]

 

以上是关于python 生成随机红包的主要内容,如果未能解决你的问题,请参考以下文章

(转)红包随机算法&微信群红包随机算法

小案例--python编写设置拼手气红包模块

随机生成红包算法

红包金额随机数的生成

Java改变生成随机数的平均值(改变生成随机数的概率)

Java改变生成随机数的平均值(改变生成随机数的概率)