快过年了,最近不少群里都发红包,晚上突然想用这个红包做个练习,简单实现了一下,效果不错哦
觉得稍微有点困难的地方是红包的算法,想了久了点,也不知道微信的算法是咋样的...
效果:
代码:
# 简单的拼手气红包 # 1.输入红包金额、个数 # 2.打印出每一个红包的金额 import random from time import sleep # 所有涉及金额的浮点数都需要用 round 方法保留2位小数,避免出现最终结果多出0.01 amount = round(float(input(‘请设置红包的金额 \> ‘)),2) num = int(input(‘请设置红包个数 \> ‘)) znum = num while num: num -= 1 if num == 0: print(‘抢到红包%.2f元 共有%d个红包 剩余%d个‘ % (amount,znum,num)) amount -= amount elif num > 0: hb = round(random.uniform(0.01,amount)/num,2) # 算法: 在0.01到红包总金额之间随机一个浮点数 / 红包剩余个数 print(‘抢到红包%.2f元 共有%d个红包 剩余%d个‘ % (hb,znum,num)) amount = amount - hb sleep(1)
本文出自 “毛线的linux之路” 博客,请务必保留此出处http://maoxian.blog.51cto.com/4227070/1893790
原文:http://maoxian.blog.51cto.com/4227070/1893790