当前位置:   article > 正文

Python语法小游戏——石头、剪刀、布_python石头剪刀布

python石头剪刀布

一个有趣的小游戏——石头、剪刀、布

要求如下:

1、键盘输入 (1 石头 2 剪刀 3 布)

2、电脑随机产生(1 石头 2 剪刀 3 布)

3、输出 划拳的结果。

可以锻炼简单的思维逻辑能力,首先,我们需要知道要用到什么。结尾附完整代码

第一步,我们需要获取用户输入信息,再随机生成一个 1~3之间的整数

  1. import random
  2. d1 = {1: "石头", 2: "剪刀", 3: "布"}
  3. a = int(input("请输入你的结果:"))
  4. b = random.randint(1,3)

第二步,我们需要判断游戏者与电脑的输赢

a与b的组合共有九种情况,可以分为三大类:

1.平局:a与b相等的三种情况,即 a == b的三种情况(剪刀对剪刀、石头对石头、布对布)

2.胜局:当a与b的关系如下时是胜局,(a == 1 and b == 2) 、(a == 2 and b == 3) 、

(a == 3 and b == 1)

3.败局:除去平局和胜局,其余的都是败局了

  1. if a == b:
  2. print("你出了:", d1[a], "系统出了:", d1[b], "平局!")
  3. a = int(input("请输入你的结果:"))
  4. else:
  5. if (a == 1 and b == 2) or (a == 2 and b == 3) or (a == 3 and b == 1):
  6. print("你出了:", d1[a], "系统出了:", d1[b], "赢了!")
  7. a = int(input("请输入你的结果:"))
  8. else:
  9. print("你出了:", d1[a], "系统出了:", d1[b], "输了!")
  10. a = int(input("请输入你的结果:"))

第三步,我们要设置关系保证游戏输入者的输入满足条件(1~3),满足则继续,不满足我们就要求游戏者重新输入

  1. if a > 3 or a < 0:
  2. print("输入错误,请重新输入:")
  3. a = int(input())
  4. else:
  5. if a == b:
  6. print("你出了:", d1[a], "系统出了:", d1[b], "平局!")
  7. a = int(input("请输入你的结果:"))
  8. else:
  9. if (a == 1 and b == 2) or (a == 2 and b == 3) or (a == 3 and b == 1):
  10. print("你出了:", d1[a], "系统出了:", d1[b], "赢了!")
  11. a = int(input("请输入你的结果:"))
  12. else:
  13. print("你出了:", d1[a], "系统出了:", d1[b], "输了!")
  14. a = int(input("请输入你的结果:"))

第四步,我们要让游戏一直进行,按结束才能结束

  1. while a:
  2. if a > 3 or a < 0:
  3. print("输入错误,请重新输入:")
  4. a = int(input())
  5. else:
  6. if a == b:
  7. print("你出了:", d1[a], "系统出了:", d1[b], "平局!")
  8. a = int(input("请输入你的结果:"))
  9. else:
  10. if (a == 1 and b == 2) or (a == 2 and b == 3) or (a == 3 and b == 1):
  11. print("你出了:", d1[a], "系统出了:", d1[b], "赢了!")
  12. a = int(input("请输入你的结果:"))
  13. else:
  14. print("你出了:", d1[a], "系统出了:", d1[b], "输了!")
  15. a = int(input("请输入你的结果:"))
  16. print("游戏结束!")

第五步,当我们继续游戏时,重新输入了a值,所以b值也需要改变才行

  1. while a:
  2. if a > 3 or a < 0:
  3. print("输入错误,请重新输入:")
  4. a = int(input())
  5. else:
  6. if a == b:
  7. print("你出了:", d1[a], "系统出了:", d1[b], "平局!")
  8. a = int(input("请输入你的结果:"))
  9. b = random.randint(1, 3)
  10. else:
  11. if (a == 1 and b == 2) or (a == 2 and b == 3) or (a == 3 and b == 1):
  12. print("你出了:", d1[a], "系统出了:", d1[b], "赢了!")
  13. a = int(input("请输入你的结果:"))
  14. b = random.randint(1, 3)
  15. else:
  16. print("你出了:", d1[a], "系统出了:", d1[b], "输了!")
  17. a = int(input("请输入你的结果:"))
  18. b = random.randint(1, 3)
  19. print("游戏结束!")

最后,我们加点细节,晚上一下,代码如下:

  1. import random
  2. print("游戏说明:1代表石头,2代表剪刀,3代表布,0结束游戏")
  3. a = int(input("请输入你的结果:"))
  4. d1 = {1: "石头", 2: "剪刀", 3: "布"}
  5. b = random.randint(1, 3)
  6. while a:
  7. if a > 3 or a < 0:
  8. print("输入错误,请重新输入:")
  9. a = int(input())
  10. else:
  11. if a == b:
  12. print("你出了:", d1[a], "系统出了:", d1[b], "平局!")
  13. a = int(input("请输入你的结果:"))
  14. b = random.randint(1, 3)
  15. else:
  16. if (a == 1 and b == 2) or (a == 2 and b == 3) or (a == 3 and b == 1):
  17. print("你出了:", d1[a], "系统出了:", d1[b], "赢了!")
  18. a = int(input("请输入你的结果:"))
  19. b = random.randint(1, 3)
  20. else:
  21. print("你出了:", d1[a], "系统出了:", d1[b], "输了!")
  22. a = int(input("请输入你的结果:"))
  23. b = random.randint(1, 3)
  24. print("游戏结束!")

运行测试结果如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/405864
推荐阅读
相关标签
  

闽ICP备14008679号