You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现多场景字符串比较,完成石头剪刀布蜥蜴史波克游戏逻辑?

实现方案

Python默认的字符串大小比较规则不符合自定义的手势胜负逻辑,因此我们需要先声明自定义胜负映射表,再基于映射表判断结果,完整实现如下:

完整可运行代码

# 定义每个手势可击败的对手列表
win_rule = {
    "rock": ["scissors", "lizard"],
    "paper": ["rock", "spock"],
    "scissors": ["paper", "lizard"],
    "lizard": ["spock", "paper"],
    "spock": ["scissors", "rock"]
}

# 读取输入
a = input("input move: ").strip()
b = input("input another move: ").strip()

# 判断结果
if a == b:
    print(0)
elif b in win_rule[a]:
    print(1)
else:
    print(2)

逻辑说明

  • 我们用字典win_rule存储所有胜负规则,字典的key是手势名称,value是当前手势可以击败的所有手势列表
  • 当输入的两个手势相等时直接输出平局结果0
  • 否则判断手势b是否在手势a的可击败列表中,是则a获胜输出1,否则b获胜输出2

运行测试示例

  • 输入a为rock、b为scissors,输出1
  • 输入a为lizard、b为spock,输出1
  • 输入a为paper、b为scissors,输出2
  • 输入a为spock、b为spock,输出0

内容的提问来源于stack exchange,提问作者roudan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 04:24:02