'python人和機器猜拳遊戲實現'

Python 電腦 畢設軟開 2019-08-26
"
"
python人和機器猜拳遊戲實現

人機猜拳比賽

完成人機猜拳互動遊戲的開發,用戶通過控制檯輸入實現出拳,電腦通過程序中的隨機數實現出拳,每一局結束後都要輸出結果。當用戶輸入n時停止遊戲,並輸出總結果。

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
# 人和機器猜拳遊戲
# 選擇角色1 曹操 2張飛 3 劉備
# 角色猜拳1剪刀 2石頭 3布 玩家輸入一個1-3的數字
# 電腦出拳 隨機產生1個1-3的數字,提示電腦出拳結果,本局對戰結果...贏...輸,是否繼續?y/n
# 輸出結果 角色贏幾局 電腦贏幾局,平局幾次 遊戲結束
import random
# 寫法--------1
class ren():
def __init__(self):
print("-----------人機大戰-------------\\n")
name = ""
while 1:
js = input("輸入要選擇的角色:\\n\\n1---曹操 2---張飛 3---關羽")
if js.isdigit():
js = int(js)
if js == 1:
print("玩家角色為---曹操")
self.name = "曹操"
break
elif js == 2:
print("玩家角色為---張飛")
self.name = "張飛"
break
elif js == 3:
print("玩家角色為---關羽")
self.name = "關羽"
break
else:
print("角色選擇錯誤,請從新選擇----\\n")
else:
print("輸入角色有誤!請從新輸入----\\n")
def caiquan(self):
while 1:
quan = input("請輸入要出拳的選項:\\n1----石頭 2----剪刀 3----布")
if quan.isdigit():
quan = int(quan)
if quan == 1:
print("玩家選擇出----石頭", )
break
elif quan == 2:
print("玩家選擇出----剪刀")
break
elif quan == 3:
print("玩家選擇出---- 布")
break
else:
print("選擇錯誤!請從新選擇!\\n")
else:
print("輸入數字不正確!請重新輸入------\\n")
return quan
class dian():
diannao = "電腦"
def suiji(self):
suijishu = random.randint(1, 3)
if suijishu == 1:
print("電腦選擇出----石頭")
elif suijishu == 2:
print("電腦選擇出----剪刀")
else:
print("電腦選擇出---- 布")
return suijishu
class zhixuan():
chuquan1 = 0
chuquan2 = 0
chuquan3 = 0
def __init__(self):
renduixiang = ren() # ren類 對象
diannaoduixiang = dian() # dian類 對象
while 1:
caiquanjieguo = renduixiang.caiquan()
diannaojieguo = diannaoduixiang.suiji()
if caiquanjieguo == 1 and diannaojieguo == 2 or \\
caiquanjieguo == 2 and diannaojieguo == 3 or \\
caiquanjieguo == 3 and diannaojieguo == 1:
print("----------玩家贏!")
self.chuquan1 += 1
elif caiquanjieguo == diannaojieguo:
print("----------平局!")
self.chuquan3 += 1
else:
print("----------電腦贏!")
self.chuquan2 += 1
if input("是否繼續遊戲:yes or no ?\\n任意鍵------n\\n").lower() == "n":
break
if self.chuquan1 > self.chuquan2:
wanjiaying = "玩家勝利!"
elif self.chuquan1 == self.chuquan2:
wanjiaying = "平---局"
else:
wanjiaying = "電腦勝利"
print("-----------------人機大戰----------------\\n遊戲結束 :\\n"
"玩家共贏{0}次---電腦共贏{1}次---平局次數{2}次\\n————總結果為 : {3}" \\
.format(self.chuquan1, self.chuquan2, self.chuquan3, wanjiaying))
duixiang1 = zhixuan() # 生成的對象 未保存到變量中
"
python人和機器猜拳遊戲實現

人機猜拳比賽

完成人機猜拳互動遊戲的開發,用戶通過控制檯輸入實現出拳,電腦通過程序中的隨機數實現出拳,每一局結束後都要輸出結果。當用戶輸入n時停止遊戲,並輸出總結果。

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
# 人和機器猜拳遊戲
# 選擇角色1 曹操 2張飛 3 劉備
# 角色猜拳1剪刀 2石頭 3布 玩家輸入一個1-3的數字
# 電腦出拳 隨機產生1個1-3的數字,提示電腦出拳結果,本局對戰結果...贏...輸,是否繼續?y/n
# 輸出結果 角色贏幾局 電腦贏幾局,平局幾次 遊戲結束
import random
# 寫法--------1
class ren():
def __init__(self):
print("-----------人機大戰-------------\\n")
name = ""
while 1:
js = input("輸入要選擇的角色:\\n\\n1---曹操 2---張飛 3---關羽")
if js.isdigit():
js = int(js)
if js == 1:
print("玩家角色為---曹操")
self.name = "曹操"
break
elif js == 2:
print("玩家角色為---張飛")
self.name = "張飛"
break
elif js == 3:
print("玩家角色為---關羽")
self.name = "關羽"
break
else:
print("角色選擇錯誤,請從新選擇----\\n")
else:
print("輸入角色有誤!請從新輸入----\\n")
def caiquan(self):
while 1:
quan = input("請輸入要出拳的選項:\\n1----石頭 2----剪刀 3----布")
if quan.isdigit():
quan = int(quan)
if quan == 1:
print("玩家選擇出----石頭", )
break
elif quan == 2:
print("玩家選擇出----剪刀")
break
elif quan == 3:
print("玩家選擇出---- 布")
break
else:
print("選擇錯誤!請從新選擇!\\n")
else:
print("輸入數字不正確!請重新輸入------\\n")
return quan
class dian():
diannao = "電腦"
def suiji(self):
suijishu = random.randint(1, 3)
if suijishu == 1:
print("電腦選擇出----石頭")
elif suijishu == 2:
print("電腦選擇出----剪刀")
else:
print("電腦選擇出---- 布")
return suijishu
class zhixuan():
chuquan1 = 0
chuquan2 = 0
chuquan3 = 0
def __init__(self):
renduixiang = ren() # ren類 對象
diannaoduixiang = dian() # dian類 對象
while 1:
caiquanjieguo = renduixiang.caiquan()
diannaojieguo = diannaoduixiang.suiji()
if caiquanjieguo == 1 and diannaojieguo == 2 or \\
caiquanjieguo == 2 and diannaojieguo == 3 or \\
caiquanjieguo == 3 and diannaojieguo == 1:
print("----------玩家贏!")
self.chuquan1 += 1
elif caiquanjieguo == diannaojieguo:
print("----------平局!")
self.chuquan3 += 1
else:
print("----------電腦贏!")
self.chuquan2 += 1
if input("是否繼續遊戲:yes or no ?\\n任意鍵------n\\n").lower() == "n":
break
if self.chuquan1 > self.chuquan2:
wanjiaying = "玩家勝利!"
elif self.chuquan1 == self.chuquan2:
wanjiaying = "平---局"
else:
wanjiaying = "電腦勝利"
print("-----------------人機大戰----------------\\n遊戲結束 :\\n"
"玩家共贏{0}次---電腦共贏{1}次---平局次數{2}次\\n————總結果為 : {3}" \\
.format(self.chuquan1, self.chuquan2, self.chuquan3, wanjiaying))
duixiang1 = zhixuan() # 生成的對象 未保存到變量中
python人和機器猜拳遊戲實現

python 人機猜拳運行結果

"

相關推薦

推薦中...