工具:Jupyter notebook + Anaconda
游戲規(guī)則 :時時彩一種玩法是買尾號。2元一個數(shù)字,中獎是20元。每個數(shù)字出現(xiàn)的概率相等。
目前想到兩種買法:
- 隨機(jī)購買,人是感性動物,很容易受周圍環(huán)境干擾。完全隨機(jī)購買在生活中是不存在的。
- 分析數(shù)字在前面N期出現(xiàn)的概率,選擇概率最小的n個數(shù)字購買。
導(dǎo)入包
import numpy as np
定義玩法一:完全隨機(jī)購買
def play_lottery(my_money,play_num,money):
'''
隨機(jī)選擇數(shù)的中獎率
result:結(jié)果字典
num:用于統(tǒng)計(jì)每個數(shù)字出現(xiàn)次數(shù)
my_money:我的余額
play_num:投注期數(shù)
money:投注額
flag: 1代表贏錢 0則相反 2表示不輸不贏
'''
flag = 1
temp = my_money
result = {'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))
for i in data:
play = np.random.randint(0,10,(5,1))
if i in play:
temp = temp + money
else:
temp = temp - money
if result[str(i[0])] == i[0]:
num[i[0]] = num[i[0]] + 1
print('我的余額:',temp)
print('開獎結(jié)果統(tǒng)計(jì):\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])
if temp < my_money:
flag = 0
elif temp == my_money:
flag = 2
return flag
賭博代碼
i = 0
binary = np.zeros((3,1))
while i < 10000:
binary[play_lottery(1000,10,10)][0] += 1
i = i + 1
可以看出輸:贏:平=6037:1886:2077
定義玩法二:按照概率購買
第一次購買,假設(shè)玩家已經(jīng)獲取到前面N期開獎號的中獎規(guī)律,不不不,應(yīng)該是前面N期的各個數(shù)字出現(xiàn)的次數(shù)。
方法如下:
def play_lottery2(my_money,play_num,money):
'''
隨機(jī)選擇數(shù)的中獎率
result:結(jié)果字典
num:用于統(tǒng)計(jì)每個數(shù)字出現(xiàn)次數(shù)
my_money:我的余額
play_num:投注期數(shù)
money:投注額
flag: 1代表贏錢 0則相反 2表示不輸不贏
'''
flag = 1
temp = my_money
result = {'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 = 1
for i in data:
if is_one == 1:
play = np.argsort(num_first,axis=0).reshape(-1,1)[0:5]
is_one = 0
play = np.argsort(num,axis=0).reshape(-1,1)[0:5]
if i in play:
temp = temp + money
else:
temp = temp - money
if result[str(i[0])] == i[0]:
num[i[0]] = num[i[0]] + 1
print('我的余額:',temp)
print('開獎結(jié)果統(tǒng)計(jì):\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])
if temp < my_money:
flag = 0
elif temp == my_money:
flag = 2
return flag
賭博代碼
i = 0
binary = np.zeros((3,1))
while i < 10000:
binary[play_lottery2(1000,10,10)][0] += 1
i = i + 1
可以看出按照概率購買之后比值為:
輸:贏:平=3733:3761:2506
相對之前完全隨機(jī)購買
輸:贏:平=6037:1886:2077
贏得幾率提升了不少,甚至贏>輸,說的我都想翹課買彩票了。
好了回到正題。珍愛生命,遠(yuǎn)離黃賭毒。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

