先说规则:
print("下面介绍双色球颜色规则:")
print("一等奖,投注号码与当期开奖号码全部相同(顺序不限,下同),即中奖")
print("二等奖:投注号码与当期开奖号码中的6个红色球号码相同,即中奖")
print("三等奖,投注号码与当期开奖号码中的任意5个红色球号码和1个蓝色球号码相同,即中奖")
print("四等奖,投注号码与当期开奖号码中的任意5个红色球号码相同,或与任意4个红色球号码和1个蓝色球号码相同,即中奖")
print("五等奖,投注号码与当期开奖号码中的任意4个红色球号码相同,或与任意3个红色球号码和1个蓝色球号码相同,即中奖")
print("六等奖:投注号码与当期开奖号码中的1个蓝色球号码相同,即中奖")
print("前面六位为红色球号码,最后一位为蓝色球号码")
直接上全部代码:
import random
import time
from datetime import datetime
class Lottery:
def __init__(self):
pass
def get_user_guesses(self):
guessed_numbers = []
for i in range(1,7):
while True: # 无限循环,直到满足退出条件
a = int(input(f"请输入第{i}个值,范围是1-33 "))
if 1 <= a <= 33: # 如果输入值在范围内,退出循环
guessed_numbers.append(a)
break
else: # 如果输入值不在范围内,提示用户并继续循环
print("输入值过小或过大")
while True: # 无限循环,直到满足退出条件
b = int(input("请输入第7个值,范围是1-16 "))
if 1 <= b <= 16: # 如果输入值在范围内,退出循环
guessed_numbers.append(b)
break
else: # 如果输入值不在范围内,提示用户并继续循环
print("输入值过小或过大")
print(f"您的号码是{guessed_numbers}")
return guessed_numbers
def produce_winning_numbers(self):
now = datetime.now()
nowtime = now.strftime("%Y-%m-%d %H:%M:%S")
self.winning_numbers = []
for i in range(6):
self.winning_numbers.append(random.randint(1, 33))
self.winning_numbers.append(random.randint(1, 16))
print(f"{nowtime}的中奖号码是{self.winning_numbers}")
return self.winning_numbers
def judge(self, user_guesses, winning_numbers):
count=0
for i in range(0,5):
for j in range(0,5):
if user_guesses[i]==winning_numbers[j]:
count=count+1
count1=0
if user_guesses[-1]==winning_numbers[-1]:
count1=count1+1
if count==6 and count1 ==1:
print("恭喜中了一等奖")
elif count==6:
print("恭喜中了二等奖")
elif count==5 and count1==1:
print("恭喜中了三等奖")
elif count==4 and count1 ==1:
print("恭喜中了四等奖")
elif count==3 and count1==1:
print("恭喜中了五等奖")
elif count1==1:
print("恭喜中了六等奖")
else :
print("抱歉,没有中奖")
def play(self):
print("下面介绍双色球颜色规则:")
print("一等奖,投注号码与当期开奖号码全部相同(顺序不限,下同),即中奖")
print("二等奖:投注号码与当期开奖号码中的6个红色球号码相同,即中奖")
print("三等奖,投注号码与当期开奖号码中的任意5个红色球号码和1个蓝色球号码相同,即中奖")
print("四等奖,投注号码与当期开奖号码中的任意5个红色球号码相同,或与任意4个红色球号码和1个蓝色球号码相同,即中奖")
print("五等奖,投注号码与当期开奖号码中的任意4个红色球号码相同,或与任意3个红色球号码和1个蓝色球号码相同,即中奖")
print("六等奖:投注号码与当期开奖号码中的1个蓝色球号码相同,即中奖")
print("前面六位为红色球号码,最后一位为蓝色球号码")
user_guesses = self.get_user_guesses()
self.produce_winning_numbers()
self.judge(user_guesses, self.winning_numbers)
test = Lottery()
test.play()
while True:
time.sleep(5)