运行方法:
1. 打开python2 IDLE;
2. 输入 from craps import *
3. 按提示输入运行命令。例如,玩游戏就输入play();查看余额就输入check_bankroll();
自动玩看胜率就输入auto()
craps.py
import random
point_set = False
bet = 10
bankroll = 1000
sim_win = 0
sim_lose = 0
print \"\"\"
Welcome to the \'Seven Star\' casino!
You are playing craps now,
your started bankroll is \'$1000\',
the started bet is \'$10\',
command:
play(): \"Rolling the dices\"
check_bankroll(): \"Checking your current balance\"
all_in(): Showing \"hand\"
set_bet(): \"Setting a new bet\"
game(): \"Check your game status\"
auto(): \"It can be played automatically for you until reach a specific bankroll\"
\"\"\"
def roll():
d1 = random.randrange(1,7)
d2 = random.randrange(1,7)
print \"You rolled\", d1, \"+\", d2, \"=\", d1+d2
return d1 + d2
def play():
global point_set, bankroll, point
global sim_win, sim_lose
if bankroll < bet:
print \"Sorry, you can\'t play since you don\'t have enough money!\"
print \"\"\"Do you wanna get more money?
1: Yes
2: No
\"\"\"
choice = raw_input(\">>\")
if choice == str(1):
money = raw_input(\"How much do you wanna get?\")
bankroll += int(money)
print \"Your current bankroll is: \", bankroll
if choice == str(2):
print \"Thanks for playing! See you next time!\"
else:
if not point_set:
print
print \"New game. Your bet is: \", bet
# for the first roll
r = roll()
if not point_set:
if r in (7, 11):
bankroll += bet
sim_win += 1
print \"Congratz! You Won! Your bankroll is: \", bankroll
elif r in (2, 3, 12):
bankroll -= bet
sim_lose += 1
print \"Oops! You lost! Your bankroll is: \", bankroll
else:
point = r
point_set = True
print \"Your point is\", \"[\", point, \"]\"
# for subsequence rolls
elif r == 7:
bankroll -= bet
sim_lose += 1
point_set = False
print \"You crapped out! Your bankroll is: \", bankroll
elif r == point:
bankroll += bet
sim_win += 1
point_set = False
print \"You made your point! Your bankroll is: \", bankroll
def set_bet(inp):
global bet, bankroll, point_set
print
if point_set:
print \"WARNING!\"
print \"The game has started, you will lose half of your bet if resetting your bet!\"
prompt = raw_input(\"\"\"
1: Yes, I am wanna reset my bet!
2: No, I don\'t wanna reset my bet!
\"\"\")
if prompt == \"1\":
point_set = False
bankroll -= bet/2
print \"Forfeiting current bet. Your bankroll is: \", bankroll
else:
pass
bet = int(inp)
print \"New bet size is: \", bet
def all_in():
set_bet(bankroll)
def check_bankroll():
global bet
print \"Your current balance is: \", bankroll
def game():
total = sim_win + sim_lose
percent = float(sim_win)/total * 100
print \"So far, the games that you have been playing are: \", total
print \"Won \", sim_win
print \"Lost \", sim_lose
print \"Overall, you have %d%% to win!\" %percent
def auto():
game_status = True
purpose = raw_input(\"How much are you gonna reach? \")
while game_status:
play()
if bankroll == int(purpose) or bankroll == 0:
game_status = False
game()
以上所述就是本文的全部内容了,希望能够对大家学习Python有所帮助。