#! /usr/bin/python# -*- 코딩: utf-8 -*-import 무작위 클래스 CDispatch: def __init__(self,sum,count): self.sum = sum self.count=count #print 'init here sum =' ,합계,',개수 ='"/> #! /usr/bin/python# -*- 코딩: utf-8 -*-import 무작위 클래스 CDispatch: def __init__(self,sum,count): self.sum = sum self.count=count #print 'init here sum =' ,합계,',개수 ='">

 >  기사  >  백엔드 개발  >  Python에서 빨간 봉투의 무작위 생성 알고리즘을 구현하기 위한 예제 코드에 대한 자세한 설명

Python에서 빨간 봉투의 무작위 생성 알고리즘을 구현하기 위한 예제 코드에 대한 자세한 설명

高洛峰
高洛峰원래의
2017-03-24 17:12:262986검색

예시는 다음과 같습니다.

#! /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에서 빨간 봉투의 무작위 생성 알고리즘을 구현하기 위한 예제 코드에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.