微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python猜拳游戏思路

python猜拳游戏思路

Python猜拳游戏思路:

游戏要素:
1. 人类玩家与电脑玩家;
2. 玩家输入手势(石头、剪刀、布);
3. 系统比较两个玩家的手势,并宣布胜负;
4. 玩家可选择再来一局或退出游戏。

实现过程:
1. 首先定义游戏规则,手势的关系为:石头 > 剪刀、剪刀 > 布、布 > 石头;
2. 接着定义函数实现游戏,主函数一个死循环,直到玩家选择退出游戏才停止;
3. 定义电脑玩家随机选择手势的函数,利用random库随机生成0、1、2,分别对应石头、剪刀、布;
4. 定义玩家输入手势的函数,注意要对用户输入进行判断,只有输入正确才能进行下一步;
5. 定义函数比较两个手势,根据手势关系返回胜负结果;
6. 在主函数调用上述函数,根据胜负情况输出胜负信息并询问是否再来一局。

代码如下:
import random

def game_rule(hand1,hand2):
    """
    手势关系:
        石头 > 剪刀
        剪刀 > 布
        布 > 石头
    """
    if hand1 == hand2:
        return 0
    elif (hand1 == '石头' and hand2 == '剪刀') or \
         (hand1 == '剪刀' and hand2 == '布') or \
         (hand1 == '布' and hand2 == '石头'):
        return 1
    else:
        return -1

def computer_hand():
    return random.choice(['石头','剪刀','布'])

def player_hand():
    while True:
        hand = input("请输入手势(石头、剪刀、布):")
        if hand in ['石头','布']:
            return hand
        else:
            print("输入有误,请重新输入。")

def game():
    while True:
        p_hand = player_hand()
        c_hand = computer_hand()
        result = game_rule(p_hand,c_hand)
        if result == 0:
            print("平局!")
        elif result == 1:
            print("你赢了!")
        else:
            print("你输了!")
        choice = input("是否再来一局(Y/N)?")
        if choice == 'N':
            break

game()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐