Python實現國外賭場熱門遊戲Craps(雙骰子)_python

來源:互聯網
上載者:User

運行方法:

    1. 開啟python2 IDLE;
    2. 輸入 from craps import *
    3. 按提示輸入運行命令。例如,玩遊戲就輸入play();查看餘額就輸入check_bankroll();
        自動玩看勝率就輸入auto()

craps.py

import random point_set = Falsebet = 10bankroll = 1000sim_win = 0sim_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有所協助。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.