python 实现红包随机生成算法的简单实例

yipeiwu_com6年前Python基础

实例如下:

</pre><pre name="code" class="python">#! /usr/bin/python
# -*- coding: utf-8 -*-

import random
class CDispatch:

 def __init__(self,sum,count):
  self.sum = sum
  self.count=count
  #print 'init here sum =',sum,',count =',count
 def __del__(self):
  pass
  #print 'run del the class'
 def getListInfo(self):
  listInfo=[]
  sumMoney = self.sum*100
  
  for num in range(0,self.count):
   if(num == self.count -1):
    listInfo.append(float('%0.2f'%sumMoney)/100)
    break
   bigRand=sumMoney+1+num-self.count
   #print 'sumMoney=',sumMoney,'num=',num,'self.count=',self.count,'big=',bigRand
   try:
    a = random.randint(1,int(bigRand))
   except:
    for i in range(0,num):
     print 'listInfo[%d]'%i,'=',listInfo[i]
    if num >0:
     print 'sumMoney=',sumMoney,'num=',num,'listInfo[num-1]=',listInfo[num-1],'self.count=',self.count,'big=',bigRand
   #print 'a=',a
    break
   sumMoney -=a
   listInfo.append(float(a)/100)
   
  return listInfo

for i in range(0,100000):

 dispatch = CDispatch(1.05,5)
 listGet = dispatch.getListInfo()
 print listGet

 del dispatch

以上这篇python 实现红包随机生成算法的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python使用pdfminer解析pdf文件的方法示例

最近要做个从 pdf 文件中抽取文本内容的工具,大概查了一下 python 里可以使用 pdfminer 来实现。下面就看看怎样使用吧。 PDFMiner是一个可以从PDF文档中提取信息...

python实现对象列表根据某个属性排序的方法详解

本文实例讲述了python实现对象列表根据某个属性排序的方法。分享给大家供大家参考,具体如下: 对于一个已有的python list, 里面的内容是一些对象,这些对象有一些相同的属性值,...

pycharm 批量修改变量名称的方法

pycharm 批量修改变量名称的方法

当代码已经写得差不多,发现某个变量名需要修改,但代码中很多地方都有该变量,一一修改太麻烦了,在不同的情景下,可以采取更加简便的方法,如下介绍: 方法一:rename方法 S1 把光标移动...

python简单判断序列是否为空的方法

本文实例讲述了python简单判断序列是否为空的方法。分享给大家供大家参考。具体如下: 假设有如下序列: m1 = [] m2 = () m3 = {} 判断他们是否为空的高效...

Python3 main函数使用sys.argv传入多个参数的实现

在运维过程中,有些时候需要向main函数中传递参数,以方便运维与测试,那么怎么向main函数中传入多个参数呢,下面以python3中的main函数为例,简单讲一下。 首先我们需要impo...