2.建立循环用于机器和玩家猜拳,玩家猜拳从键盘输入,机器猜拳由程序自动生成
3.在循环中判断每一次猜拳中机器和玩家谁取得胜和
判断过程:
(1)当机器和玩家的猜拳相同则平局;
(2)玩家是石头且机器是剪刀 / 玩家是剪刀且机器是布 / 玩家是布且机器是石头时
玩家获胜
3)其他情况下,机器获胜
import random
def xing():
print('-' * 80)
class Player:
def __init__(self, action):
self.name, self.action = '玩家', action
def Action(self):
if self.action == 1:
print(f'{self.name}出拳方式为:[石头]')
elif self.action == 2:
print(f'{self.name}出拳方式为:[剪刀]')
elif self.action == 3:
print(f'{self.name}出拳方式为:[布]')
class Computer:
def __init__(self):
self.name = '电脑'
def Action(self,random_num):
if random_num == 1:
print('电脑出拳方式为:[石头]')
elif random_num == 2:
print('电脑出拳方式为:[剪刀]')
elif random_num == 3:
print('电脑出拳方式为:[布]')
class Game:
print('请按对应编号选择您的出拳方式:\n1 石头 2 剪刀 3 布 4 退出游戏')
def judge(self):
while True:
action1 = int(input('请选择您的出拳方式:'))
person = Player(action1)
person.Action()
if action1 >= 1 and action1 <= 3:
computer = Computer()
random_num = random.randint(1, 3)
computer.Action(random_num)
if action1 == 1:
if random_num == 1:
print('本局平局')
xing()
elif random_num == 2:
print('本局玩家获胜')
xing()
elif random_num == 3:
print('本局电脑获胜')
xing()
elif action1 == 2:
if random_num == 1:
print('本局电脑获胜')
xing()
elif random_num == 2:
print('本局平局')
xing()
elif random_num == 3:
print('本局玩家获胜')
xing()
elif action1 == 3:
if random_num == 1:
print('本局玩家获胜')
xing()
elif random_num == 2:
print('本局电脑获胜')
xing()
elif random_num == 3:
print('本局平局')
xing()
elif action1 == 4:
print('游戏结束')
xing()
break
else:
print('您输入有误!')
xing()
xing()
c=Game()
c.judge()