玩彩票赢钱概率有多少?用Python来告诉你标签(空格分隔):Python
工具:Jupyternotebook+Anaconda
游戏规则:时时彩一种玩法是买尾号。2元一个数字,中奖是20元。每个数字出现的概率相等。
目前想到两种买法:
导入包
importnumpyasnp定义玩法一:完全随机购买defplay_lottery(my_money,play_num,money):'''随机选择数的中奖率result:结果字典num:用于统计每个数字出现次数my_money:我的余额play_num:投注期数money:投注额flag:1代表赢钱0则相反2表示不输不赢'''flag=1temp=my_moneyresult={'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}data=np.random.randint(0,10,(play_num,1))num=np.zeros((10,1))foriindata:play=np.random.randint(0,10,(5,1))ifiinplay:temp=temp+moneyelse:temp=temp-moneyifresult[str(i[0])]==i[0]:num[i[0]]=num[i[0]]+1print('我的余额:',temp)print('开奖结果统计:\n',num[0][0],num[1][0],num[2][0],num[3][0],num[4][0],num[5][0],num[6][0],num[7][0],num[8][0],num[9][0])iftemp 第一次购买,假设玩家已经获取到前面N期开奖号的中奖规律,不不不,应该是前面N期的各个数字出现的次数。方法如下: defplay_lottery2(my_money,play_num,money):'''随机选择数的中奖率result:结果字典num:用于统计每个数字出现次数my_money:我的余额play_num:投注期数money:投注额flag:1代表赢钱0则相反2表示不输不赢'''flag=1temp=my_moneyresult={'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}data=np.random.randint(0,10,(play_num,1))num=np.zeros((10,1))num_first=np.random.randint(0,10,(10,1))is_one=1foriindata:ifis_one==1:play=np.argsort(num_first,axis=0).reshape(-1,1)[0:5]is_one=0play=np.argsort(num,axis=0).reshape(-1,1)[0:5]ifiinplay:temp=temp+moneyelse:temp=temp-moneyifresult[str(i[0])]==i[0]:num[i[0]]=num[i[0]]+1print('我的余额:',temp)print('开奖结果统计:\n',num[0][0],num[1][0],num[2][0],num[3][0],num[4][0],num[5][0],num[6][0],num[7][0],num[8][0],num[9][0])iftemp 可以看出按照概率购买之后比值为:输:赢:平=3733:3761:2506相对之前完全随机购买输:赢:平=6037:1886:2077赢得几率提升了不少,甚至赢>输,说的我都想翘课买彩票了。