1. 程式人生 > 程式設計 >python實現一個猜拳遊戲

python實現一個猜拳遊戲

本文例項為大家分享了python實現一個猜拳遊戲的具體程式碼,供大家參考,具體內容如下

設計一個猜拳的遊戲,要求如下:

1、遊戲開始時,輸入玩家名字
2、可以選擇3個電腦對手(電腦名字自定)
3、遊戲規則為:1、剪刀 2、石頭 3、布
4、遊戲開始,玩家vs電腦,玩家選擇出一個,電腦隨機1-3
5、具有局數統計(如:現在是第幾局)、輸贏統計(玩家勝幾局,電腦勝幾局)

效果圖如下:

python實現一個猜拳遊戲

程式碼如下:

import random #先匯入隨機數
class game():   #建立一個遊戲的類 裡面分為兩個屬性一個玩家名 一個電腦名
 def __init__(self,playername,computername):
  self.playername=playername
  self.computername=computername
  self.playerscore=0 #玩家得分
  self.comscore=0  #電腦得分
  self.sum=0   #平局數
 def startgame(self):
  newname=input("請輸入你的鼎鼎大名:")
  self.playername=newname
  dnname=input("請選擇你的對手:1.王源,2.王俊凱,3.易烊千璽:")
  if dnname=="1":
   print("你的對手為王源")
   self.computername="王源"
  elif dnname=="2":
   print("你的對手為王俊凱")
   self.computername = "王俊凱"
  elif dnname=="3":
   print("你的對手為易烊千璽")
   self.computername = "易烊千璽"
  else:
   print("輸入有誤,系統以為你隨機挑選王俊凱")
   self.computername = "王俊凱"
  print("--------猜拳遊戲開始,%s VS %s--------" % (self.playername,self.computername))
  print("遊戲規則為:1.剪刀,2.石頭,3.布")
  while True:
   player=int(input("玩家請出拳:"))
   #玩家出拳
   player = random.randint(1,3)
   if player == 1:
    print("  %s出了剪刀" % self.playername)
   elif player == 2:
    print("  %s出了石頭" % self.playername)
   else:
    print("  %s出了布" % self.playername)
   #電腦出拳
   computer=random.randint(1,3)
   if computer==1:
    print("  %s出了剪刀"%self.computername)
   elif computer==2:
    print("  %s出了石頭"%self.computername)
   else:
    print("  %s出了布"%self.computername)
   if(player==computer):
    print("平局")
    self.sum+=1
   elif(player==1 and computer==3) or(player==2 and computer==1) or(player==3 and computer==2):
    print("%s本局獲勝"%self.playername)
    self.playerscore+=1
   else:
    print("%s本局獲勝"%self.computername)
    self.comscore+=1
   print("輸贏統計:%s VS %s" % (self.playername,self.computername),"玩家%s勝利%d次" % (self.playername,self.playerscore),"%s勝利%d次" % (self.computername,self.comscore),"%d次平局" % self.sum)
   print("---------------------------------------------------")
   tag = input("是否繼續y/n :")
   if tag.lower() == 'n':
    print("輸贏統計:%s VS %s" % (self.playername,"%d次平局" % self.sum)
    break


lx=game("as","hfg") #傳入的引數數量必須和定義引數的數量相等
lx.startgame()  #呼叫遊戲開始的方法

更多有趣的經典小遊戲實現專題,分享給大家:

C++經典小遊戲彙總

python經典小遊戲彙總

python俄羅斯方塊遊戲集合

JavaScript經典遊戲 玩不停

java經典小遊戲彙總

javascript經典小遊戲彙總

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。