Python制作简单的剪刀石头布游戏


Posted in Python onDecember 10, 2020

关于程序相关的

  • 您可以反复玩游戏,直到选择停止为止。
  • 该程序跟踪获胜情况。
  • 大小写无关紧要(即ROCK与Rock相同)。
  • 如果您输入的内容无效,程序会一直提示您,直到您输入有效的内容。

对项目进行编码的步骤:

  1. 创建一个简单的单轮游戏版本,我们不执行正确的输入。
  2. 如果输入了无效的内容,则添加while循环可重新提示用户输入选择。
  3. 使用while循环让用户反复播放,并使用变量来跟踪得分。

程序代码

import random

input("Welcome to Rock, Paper, Scissors! Press Enter to start.")
print()
user_wins = 0
computer_wins = 0

choices = ["rock", "paper", "scissors"]

while True:
 random_index = random.randint(0,2)
 cpu_choice = choices[random_index]

 user_choice = input("Rock, Paper, or Scissors? ").lower()
 while user_choice not in choices:
  user_choice = input("That is not a valid choice. Please try again: ").lower()
 
 print()
 print("Your choice:", user_choice)
 print("Computer's choice:", cpu_choice)
 print()

 if user_choice == 'rock':
  if cpu_choice == 'rock':
   print("It's a tie!")
  elif cpu_choice == 'scissors':
   print("You win!")
   user_wins+=1
  elif cpu_choice == 'paper':
   print("You lose!")
   computer_wins+=1
 elif user_choice == 'paper':
  if cpu_choice == 'paper':
   print("It's a tie!")
  elif cpu_choice == 'rock':
   print("You win!")
   user_wins+=1
  elif cpu_choice == 'scissors':
   print("You lose!")
   computer_wins+=1
 elif user_choice == 'scissors':
  if cpu_choice == 'scissors':
   print("It's a tie!")
  elif cpu_choice == 'paper':
   print("You win!")
   user_wins+=1
  elif cpu_choice == 'rock':
   print("You lose!")
   computer_wins+=1

 print()
 print("You have "+str(user_wins)+" wins")
 print("The computer has "+str(computer_wins)+" wins")
 print()

 repeat = input("Play again? (Y/N) ").lower()
 while repeat not in ['y', 'n']:
  repeat = input("That is not a valid choice. Please try again: ").lower()
 
 if repeat == 'n':
  break

 print("\n----------------------------\n")

运行效果:

Python制作简单的剪刀石头布游戏

以上就是Python制作简单的剪刀石头布游戏的详细内容,更多关于Python 剪刀石头布游戏的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python利用ansible分发处理任务
Aug 04 Python
Python实现计算最小编辑距离
Mar 17 Python
python中urllib.unquote乱码的原因与解决方法
Apr 24 Python
python将ansible配置转为json格式实例代码
May 15 Python
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
May 25 Python
基于pandas数据样本行列选取的方法
Apr 20 Python
PHP实现发送和接收JSON请求
Jun 07 Python
python opencv捕获摄像头并显示内容的实现
Jul 11 Python
python飞机大战pygame游戏框架搭建操作详解
Dec 17 Python
opencv 阈值分割的具体使用
Jul 08 Python
基于Python编写一个计算器程序,实现简单的加减乘除和取余二元运算
Aug 05 Python
Python pyecharts案例超市4年数据可视化分析
Aug 14 Python
python给list排序的简单方法
Dec 10 #Python
详解java调用python的几种用法(看这篇就够了)
Dec 10 #Python
Python利用imshow制作自定义渐变填充柱状图(colorbar)
Dec 10 #Python
详解Python GUI编程之PyQt5入门到实战
Dec 10 #Python
python 实现ping测试延迟的两种方法
Dec 10 #Python
弄清Pytorch显存的分配机制
Dec 10 #Python
python实现经纬度采样的示例代码
Dec 10 #Python
You might like
php引用计数器进行垃圾收集机制介绍
2012/09/19 PHP
关于二级目录拖拽排序的实现(源码示例下载)
2013/04/26 PHP
php计算数组不为空元素个数的方法
2014/01/27 PHP
php常用表单验证类用法实例
2015/06/18 PHP
php实现socket推送技术的示例
2017/12/20 PHP
php实现分页功能的详细实例方法
2019/09/29 PHP
javascript下查找父节点的简单方法
2007/08/13 Javascript
基于jquery的图片懒加载js
2010/06/30 Javascript
JS实现点击颜色块切换指定区域背景颜色的方法
2015/02/25 Javascript
jquery插件qrcode在线生成二维码
2015/04/26 Javascript
简单解析JavaScript中的__proto__属性
2016/05/10 Javascript
js实现ATM机存取款功能
2020/10/27 Javascript
React学习之受控组件与数据共享实例分析
2020/01/06 Javascript
解决vue-router 切换tab标签关闭时缓存问题
2020/07/22 Javascript
python中合并两个文本文件并按照姓名首字母排序的例子
2014/04/25 Python
Python实现字符串反转的常用方法分析【4种方法】
2017/09/30 Python
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
django DRF图片路径问题的解决方法
2018/09/10 Python
Python datetime和unix时间戳之间相互转换的讲解
2019/04/01 Python
利用python如何在前程无忧高效投递简历
2019/05/07 Python
numpy库与pandas库axis=0,axis= 1轴的用法详解
2019/05/27 Python
python issubclass 和 isinstance函数
2019/07/25 Python
python 进程间数据共享multiProcess.Manger实现解析
2019/09/23 Python
Python为何不支持switch语句原理详解
2020/10/21 Python
Html5 postMessage实现跨域消息传递
2016/03/11 HTML / CSS
HTML5视频支持检测(检查浏览器是否支持视频播放)
2013/06/08 HTML / CSS
Charles & Colvard官网:美国莫桑石品牌
2019/06/05 全球购物
一些PHP的面试题
2015/05/06 面试题
煤矿班组长竞聘书
2014/03/31 职场文书
低碳日宣传活动总结
2014/07/09 职场文书
世界气象日活动总结
2015/02/27 职场文书
辩论赛开场白大全(主持人+辩手)
2015/05/29 职场文书
结婚幸福感言
2015/08/01 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
初中地理教学反思
2016/02/19 职场文书
对Golang中的FORM相关字段理解
2021/05/02 Golang