python 微信红包随机金额
来源:互联网 发布:python 相关性分析 编辑:程序博客网 时间:2024/05/17 07:55
直接上代码吧
# -*- coding: utf-8 -*- from decimal import Decimal, InvalidOperation import random def money_val(min, max): return min if min > max else Decimal(str(random.randint(min, max))) def money_random(total, num, min=0.01): """ :param total=10; # 红包总额 10 元 :param num=8; # 分成 8 个红包,支持 8 人随机领取 :param min=0.01; # 每个人最少能收到 0.01 元 """ money_list = [] try: total = Decimal(str(total)) except InvalidOperation as e: return money_list, e.message try: if isinstance(num, float) and int(num) != num: raise ValueError(u'Invalid value for Num: \'{0}\''.format(num)) num = Decimal(str(int(num))) except ValueError as e: return money_list, e.message try: min = Decimal(str(min)) except InvalidOperation as e: return money_list, e.message if total < num * min: return money_list, u'Invalid value for Total-{0}, Num-{1}, Min-{2}'.format(total, num, min) for i in xrange(1, num): safe_total = (total - (num - i) * min) / (num - i) # 随机安全上限 money = money_val(min * 100, int(safe_total * 100)) / 100 total -= money money_list.append(money) money_list.append(total) random.shuffle(money_list) # 随机打乱 return money_list, u'Success' if __name__ == '__main__': print money_random(100, 5)
0 0
- python 微信红包随机金额
- 微信红包随机金额算法
- 微信随机红包算法
- 微信红包金额分配的算法
- 微信红包随机算法初探
- 微信红包随机算法初探
- 微信红包随机算法初探
- 微信红包的随机算法
- 微信红包随机算法初探
- 微信红包随机算法初探
- tx面试微信红包随机
- java实现微信红包随机算法
- 微信红包随机分配算法初探
- 微信红包的随机逻辑源码
- android 微信红包 hook 版控制金额尾数原理
- 模拟微信红包分配金额(改良版)
- 固定总金额,红包数量,单红包金额上限,单红包金额下限拆分随机红包
- 红包随机金额生成的方法
- 利用virtualenv在Hadoop Streaming中使用完全个性化的Python解释器
- Android的布局技巧 #3:通过合并优化
- 顺序容器 6 删除操作
- AppCompat v23.2 ---关于Vector
- 来到csdn的第一天
- python 微信红包随机金额
- Apple Pay接入详细教程
- 【数论】【矩阵加速】[POJ3070]Fibonacci
- HTTP协议 - 协议格式
- cocos 游戏接入Android平台的广告SDK
- STM32 ID
- Online Learning
- Android下音频进行转码
- 单客户端