python-编写石头剪刀布小游戏
Posted Hejing_zhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-编写石头剪刀布小游戏相关的知识,希望对你有一定的参考价值。
python-编写石头剪刀布小游戏
1.基本功能能实现版本
#编写石头、剪刀、布的小游戏
import random
pc = random.choice(['石头', '剪刀', '布'])
player = input('请出拳(石头/剪刀/布):')
print("你出的拳是:%s,计算机出的拳是: %s" % (player, pc))
if player == '石头':
if pc == '石头':
print('平局')
elif pc == '剪刀':
print('你赢了!')
else:
print('你输了!')
elif player == '剪刀':
if pc == '石头':
print('你输了')
elif pc == '剪刀':
print('平局')
else:
print('你赢了')
else:
if pc == '石头':
print('你赢了')
elif pc == '剪刀':
print('你输了')
else:
print('平局')
2.精简版本
#编写石头、剪刀、布的小游戏
import random
pc = random.choice(['石头', '剪刀', '布'])
player = input('请出拳(石头/剪刀/布):')
#人能赢的三种情况,写成列表的形式
win_list = [['石头', '剪刀'], ['剪刀', '布'], ['布', '石头']]
print("你出的拳是:%s,计算机出的拳是: %s" % (player, pc))
if player == pc:
print('平局')
elif [player, pc] in win_list: #成员关系判断
print('你赢了')
else:
print('你输了')
3.升级版本-三局两胜
#编写石头、剪刀、布的小游戏
import random
all_choice = ['石头', '剪刀', '布'] #只有三种选择,定义成列表
win_list = [['石头', '剪刀'], ['剪刀', '布'], ['布', '石头']] #人能赢的三种情况,写成列表的形式
prompt = """*********************
(0) 石头
(1) 剪刀
(2) 布
********************
请出拳(0/1/2):
"""
player_win = 0 #人赢的次数
pc_win = 0 #计算机赢的次数
while player_win < 2 and pc_win < 2:
#注意这里:为什么不是player_win < 2 or pc_win < 2呢?
#or的两边有一边是True,其结果就是True,就往下执行,
#也就是说得等到player_win < 2为True时,且pc_win < 2为True时,循环才会结束
#and的两边有一边是False,循环就会结束
pc = random.choice(all_choice)
ind = int(input(prompt)) #把人输入的数字序号转换成字符类型
player = all_choice[ind]
print("你出的拳是:%s,计算机出的拳是: %s" % (player, pc))
if player == pc:
print('\\033[32m平局\\033[0m')
elif [player, pc] in win_list: #成员关系判断
print('\\033[32m你赢了\\033[0m')
player_win += 1
else:
print('\\033[31m你输了\\033[0m')
pc_win += 1
4.游戏效果
以上是关于python-编写石头剪刀布小游戏的主要内容,如果未能解决你的问题,请参考以下文章