Point.py def getLotteryGame()不存储笔记和点数

2024-06-25 05:48:50 发布

您现在位置:Python中文网/ 问答频道 /正文

好吧,所以我所做的代码是最后重新加载彩票,但它不是存储的笔记或给中奖。它唯一打印的东西是随机。洗牌(玩家)和以下的任何东西。它不储存笔记或给出分数。哦,pot,lotteryStart,players,和ratio都在类外:(players和ratio都是一个列表,pot=1和lotteryStart=time.time())和alerts.append(players[m])我不确定是否需要读取模块中的alerts.txt文件,如果它也在我的bot中

这是完整的代码链接:http://bpaste.net/show/165884/

  def getLotteryGame():
    global pot
    global players
    global lotteryStart
    global ratios
    different = float(time.time() - lotteryStart)
    mins = int((different % Point.HOUR) / Point.MINUTE)
    secs = int(different % Point.MINUTE)
    osecs = 59-secs
    if osecs <= 10:
      if len(players) > 0:
        random.shuffle(players)
        print("Shuffled players") #ONLY THING THAT PRINTS
        for i in range(-2, len(players) - 2):
           if i < 0:
             ratios.append(1 - (i * 0.33)) # ratio > 1
           else:
             ratios.append(1 / (1 + (i * 0.33))) # ratio <= 1
        winnings = [pot * r for r in ratios]
        print(ratios)
        for m in range(1, len(players)):
           notes.store("~lottery~", players[m], "The system has placed you "+Point.ordinal(m)+" in the lottery. The lottery awarded you "+winnings+" P$", time.time())
           print("Stored the notes")
           alerts.append(players[m]) 
           print("Alerts appended")
           point = Point.dPoint[players[m]]
           point, winnings = int(point), int(winnings)
           point = int(point+winnings)
           Point.dPoint[players[m]] = int(point)
           print("done")
        return True
     elif len(players) == 0:
        return True
  elif osecs > 10:
     return False

Tags: inlentimeglobalintpointprintratio