编写一个函数,简单模拟微信发红包算法。

'''编写一个函数,简单模拟微信发红包算法。函数有两个参数:第一个参数表示红包总金额,另一个参数表示红包数量。

要求:

1.所有随机产生的红包金额(保留两位小数)存放在一个列表中

2.单个红包金额最少为0.01

3.红包总金额不超过200

4.打印出来随机红包列表'''

import random
number = int(input('红包个数:\n'))
money = float(input('总金额:\n'))
def redPacket(number, money):
    result = []
    n = number
    if float(money) > 0 and float(money) < 200:
        for i in range(number):
            n -= 1
            if n > 0:
                m = random.uniform(0.01,money)
                m = round(m,2)
            else:
                m = money
            m = round(m,2)
            result.append(m)
        return result
    else:
        print('请输入一个大于0并且小于200的红包')
a = redPacket(number, money)
print(a)

 

思路: 1.红包是随机产生的,所以要用到random这个模块( import random )

2.产生的红包要保留两位小数,可以考虑用round()方法

round(x,y)  :第一个参数是一个浮点数,第二个参数是保留的小数位数(不写的话,默认保留到整数)

round()方法对浮点数进行近似取值,保留几位小数

3.单个红包金额最少为0.01,考虑用random模块下的uniform函数

uniform(x,y)  :x---随机数的最小值,包含该值;y---随机数的最大值,不包含该值

uniform()函数返回的是一个浮点数

  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值