任务描述
制作一个小游戏----石头剪刀布,玩家与电脑对弈,玩家从键盘输入数字,1代表石头,2代表剪刀,3代表布,游戏规则是石头砸碎剪刀,剪刀剪开布,布包住石头。
程序展示
python
# 导入一个随机数模块
import random
#设置无限次的循环
while True:
# 定义一个变量,来接收玩家选择的参数
number = int(input('请输入一个数字\
(1 - 石头, 2 - 剪刀, 3 - 布,4 - 退出):'))
# 定义一个变量,来表示电脑的操作
computer = random.randint(1, 3)
# 如果键盘输入4,则游戏停止
if number == 4:
break
# 如果玩家操作与电脑相同,则平局
elif number == computer:
print('电脑出了%s,平局!' % computer)
#如果玩家是石头,电脑是剪刀,
#或者玩家是剪刀,电脑是布,
#或者玩家是布,电脑是石头,则玩家获得胜利
elif(number == 1 and computer == 2) or \
(number == 2 and computer == 3) or \
(number == 3 and computer == 1):
print('电脑出了%s,玩家获胜!' % computer)
# 否则电脑获胜
else:
print('电脑出了%s,电脑获胜!' % computer)
课后练习
改善一下课堂上老师所讲的程序,看看能否做出更好玩的以及用户体验更好的程序?
python
# 导入一个随机数模块
import random
# 设置无限次的循环
while True:
# 定义一个变量,来接收玩家选择的参数
number = int(input('请输入一个数字\
(1-石头,2-剪刀,3-布,4-退出):'))
# 定义一个变量,来表示电脑的操作
computer = random.randint(1, 3)
# 判断键盘输入,数字转化为文字描述
if number == 1:
print('玩家出了石头')
elif number == 2:
print('玩家出了剪刀')
elif number == 3:
print('玩家出了布')
# 如果键盘输入4,则游戏停止
elif number == 4:
print('游戏结束!')
break
else:
print('输入错误!请重新输入!')
continue
#判断电脑操作,转化为文字描述
if computer == 1:
print('电脑出了石头')
elif computer == 2:
print('电脑出了剪刀')
elif computer == 3:
print('电脑出了布')
# 如果玩家操作与电脑相同,则平局
if number == computer:
print('平局!')
# 如果玩家是石头,电脑是剪刀,
# 或者玩家是剪刀,电脑是布,
# 或者玩家是布,电脑是石头,则玩家获得胜利
elif (number == 1 and computer == 2) or \
(number == 2 and computer == 3) or \
(number == 3 and computer == 1):
print('玩家获胜!')
# 否则电脑获胜
else:
print('电脑获胜!')