python 猜拳遊戲

2021-09-24 18:00:49 字數 3266 閱讀 6759

猜拳遊戲

分析類:屬性、方法

自己玩家:player 選角色[「美羊羊」,「喜羊羊」,"沸羊羊"]

​ 出拳 石頭 剪刀 布

計算機玩家:computer 選角色[「1美羊羊」,「喜洋洋」,"沸羊羊"] 隨機選角

​ 隨機出拳

game類,包含了整個遊戲流程,讓玩家選角色、出拳、計算機選角色、出拳、比較出拳,顯示解決

再玩一次

贏+1分

可以迴圈玩

當遊戲結束之後,可以提示計算機和玩家的分數

import random

class player:

roles = ["美羊羊", "喜洋洋", "沸羊羊"]

fists = ["石頭", "剪刀", "布"]

def __init__(self):

self.role = ""

self.fist = ""

self.score = 0

def choose_role(self):

print(player.roles)

while true:

r = input("請選擇角色:1/2/3")

if r.isdigit():

r1 = int(r)

if 0 < r1 < 4:

self.role = player.roles[r1-1]

break

else:

print("輸入錯誤請重新選擇")

continue

else:

print("輸入錯誤請重新選擇")

continue

def choose_fist(self):

print(player.fists)

while true:

r = input("請選擇拳頭:1/2/3")

if r.isdigit():

r1 = int(r)

if 0 < r1 < 4:

self.fist = player.fists[r1-1]

break

else:

print("輸入錯誤請重新選擇")

continue

else:

print("輸入錯誤請重新選擇")

continue

class computer:

roles = ["美羊羊", "喜洋洋", "沸羊羊"]

fists = ["石頭", "剪刀", "布"]

def __init__(self):

self.role = ""

self.fist = ""

self.score = 0

def choose_role(self):

t = random.randint(0, 2)

self.role = computer.roles[t]

print(self.role)

def choose_fist(self):

t = random.randint(0, 2)

self.fist = computer.fists[t]

print(self.fist)

class game:

def __init__(self):

self.player = player()

self.computer = computer()

self.score = 0

def init_role(self):

self.player.choose_role()

self.computer.choose_role()

def init_fist(self):

self.player.choose_fist()

self.computer.choose_fist()

def get_start(self):

f = input('是否開始遊戲?(y/n):')

if f == "y":

self.init_role() # 初始化角色

while true:

self.init_fist() # 選擇出拳

self.compare()

flag = input("是否繼續玩:y/n")

if flag == "n":

break

print("玩家{}贏了{}局,電腦{}贏了{}局,平局次數為{}".format

(self.player.role, self.player.score, self.computer.role, self.computer.score, self.score))

def compare(self):

if self.player.fist == self.computer.fist:

print("平局")

self.score += 1

elif ((self.player.fist == "石頭" and self.computer.fist == "剪刀")

or (self.player.fist == "剪刀" and self.computer.fist == "布")

or (self.player.fist == "布" and self.computer.fist == "石頭")):

print("玩家勝")

self.player.score += 1

else:

print("電腦勝利,玩家弱爆了")

self.computer.score += 1

g = game()

g.get_start()

執行結果如下:

是否開始遊戲?(y/n):y

['美羊羊', '喜洋洋', '沸羊羊']

請選擇角色:1/2/33

喜洋洋['石頭', '剪刀', '布']

請選擇拳頭:1/2/33

剪刀電腦勝利,玩家弱爆了

是否繼續玩:y/ny

['石頭', '剪刀', '布']

請選擇拳頭:1/2/32

剪刀平局

是否繼續玩:y/ny

['石頭', '剪刀', '布']

請選擇拳頭:1/2/33

剪刀電腦勝利,玩家弱爆了

是否繼續玩:y/nn

沸羊羊贏了0局,喜洋洋贏了2局,平局次數為1

**

python 猜拳遊戲

ubuntu下編寫的乙個小遊戲,強迫症患者表示玩了好久。the finger guessing game coding utf 8 匯入乙個包,可以理解為乙個工具箱 import random 等待玩家輸入 playerpls raw input 請輸入 剪刀 0 石頭 1 布 2 player i...

python 猜拳遊戲

import random 首先匯入模組 猜拳小遊戲 不考慮其他情況 player int input 請輸入 0 剪刀 1 石頭 2 布 print 使用者輸入的是 player input 用來接收使用者輸入的資料 電腦應該隨機的出乙個數字 需要使用到隨機數模組 random random.ra...

猜拳小遊戲(python)

import random 載入模組random 隨機數 win 0 定義勝場 lose 0 定義敗場 dogfall 0 定義平局 while true while 迴圈 print 10 猜拳遊戲 10 遊戲開頭輸出 遊戲名 print 勝 s,敗 s,平 s win,lose,dogfall ...