思路以及程序如下:
1,导入random模块并定义三个全局变量。
import random
i=0
j=0
k=0
2,定义类和类列表。
class Gram():
def __init__(self,com,player,num):
self.com=com
self.player=player
self.num=num
class Gramlist():
def __init__(self):
self.gramlist=[]
3,随机函数。
def random(self):
# print("电脑回合:"random,)
self.com=random.randint(1,3)
print("电脑回合(1代表剪刀,2代表石头,3代表布):",self.com)
4,汉字转数字。
def transform(self):
self.player=input("玩家回合(输入石头,剪刀或布):")
if self.player=="剪刀":
self.player=int(1)
elif self.player=="石头":
self.player=int(2)
elif self.player=="布":
self.player=int(3)
5,游戏正式进行。
def pk(self):
self.transform()
self.random()
if self.player==self.com:
print("平局\n","回合结束")
global k
k=k+1
elif self.player-self.com==1:
print("玩家获胜\n","回合结束")
elif self.com-self.player==2:
print("玩家获胜\n","回合结束")
else:
print("电脑获胜\n","回合结束")
global j
j=j+1
6,主控函数和主函数。
def main(self):
while True:
chioce=input("按R开始游戏,N退出游戏并结算").lower()
global i
# i=i+1
# print('第%d回合' %(i))
if chioce=="r":
i = i + 1
print('第%d回合' % (i))
self.pk()
elif chioce=="n":
print("你共玩了%d局"%(i))
print("赢:%d局"%(i-j-k))
print("输:%d"%(j))
print("平:%d局"%(k))
else:print("输入错误")
st=Gramlist()
st.main()