0
点赞
收藏
分享

微信扫一扫

python练习题:使用循环完成剪刀石头布游戏,提示用户输入要出的拳 :石头(1)/剪刀(2)/布(3)/退出(4)电脑随机出拳比较胜负,显示用户胜、负还是平局

以沫的窝 2022-02-16 阅读 24
"""
使用循环完成剪刀石头布游戏,提示用户输入要出的拳 :石头(1)/剪刀(2)/布(3)/退出(4)
电脑随机出拳比较胜负,显示用户胜、负还是平局。运行如下图所示:

提示:电脑随机出拳
import random
random.randint(a, b),返回[a, b]之间的整数,包含a和b
你赢的场景:
你:石头【1】,电脑:剪刀【2】
你:剪刀【2】,电脑:布【3】
你:布【3】,电脑:石头【1】
平局:
你,电脑出一样的
"""
# 方法一
import random


# def get_result(user, computer):
#     if (user, computer) in [(1, 2), (2, 3), (3, 1)]:  # 赢的场景
#         return "你胜利了"
#     elif (user, computer) in [(1, 1), (2, 2), (3, 3)]:  # 平局的场景
#         return "平局"
#     else:
#         return "你输了"
#
#
# desc = {"1": "石头", "2": "剪刀", "3": "布"}
#
# while True:
#     user_num = input("输入要出的拳 :石头(1)/剪刀(2)/布(3)/退出(4):")
#     if user_num == '4':
#         break
#     computer_num = random.randint(1, 3)
#     res = get_result(int(user_num), computer_num)
#     print("您的出拳为:{},电脑出拳为:{},结果为{}".format(desc[user_num],desc[str(computer_num)],res))

# 方法二
while True:
    user = int(input("输入要出的拳 :石头(1)/剪刀(2)/布(3)/退出(4):"))
    if user == 4:  # 输入4,退出游戏
        print("游戏退出")
        break  # 退出当前循环
    computer = random.randint(1,3)  # 循环1,2,3整数
    if (
            (user == 3 and computer == 1) or
            (user == 1 and computer == 2) or
            (user == 2 and computer == 3)
    ):
        print("您的出拳为:{},电脑出拳为:{},你胜利了!".format(user,computer))
    elif user == computer:
        print("您的出拳为:{},电脑出拳为:{},平局!".format(user, computer))
    else:
        print("您的出拳为:{},电脑出拳为:{},你输了!".format(user, computer))
print("游戏结束!")
举报

相关推荐

0 条评论