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中字符编码简介、方法及使用建议
Jan 08 Python
Python中编写ORM框架的入门指引
Apr 29 Python
Python3读取zip文件信息的方法
May 22 Python
python保存字符串到文件的方法
Jul 01 Python
详解Python发送邮件实例
Jan 10 Python
让python在hadoop上跑起来
Jan 27 Python
python的多重继承的理解
Aug 06 Python
利用Python如何将数据写到CSV文件中
Jun 05 Python
python获取中文字符串长度的方法
Nov 14 Python
python使用 cx_Oracle 模块进行查询操作示例
Nov 28 Python
Anaconda的安装与虚拟环境建立
Nov 18 Python
python非标准时间的转换
Jul 25 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
用cookies来跟踪识别用户
2006/10/09 PHP
php日历[测试通过]
2008/03/27 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
PHP基于array_unique实现二维数组去重
2020/07/14 PHP
Nigma vs AM BO3 第二场2.13
2021/03/10 DOTA
5 cool javascript apps
2007/03/24 Javascript
使用apply方法处理数组的三个技巧[译]
2012/09/20 Javascript
JavaScript的strict模式与with关键字介绍
2014/02/08 Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
2014/06/10 Javascript
node.js中使用socket.io的方法
2014/12/15 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
详解JavaScript逻辑And运算符
2015/12/04 Javascript
手机Web APP如何实现分享多平台功能
2016/08/19 Javascript
浅谈JS读取DOM对象(标签)的自定义属性
2016/11/21 Javascript
记一次webapck4 配置文件无效的解决历程
2018/09/19 Javascript
Vue.js实现开发购物车功能的方法详解
2019/02/22 Javascript
JS实现动态倒计时功能(天数、时、分、秒)
2019/12/12 Javascript
Vue 自适应高度表格的实现方法
2020/05/13 Javascript
[01:57]2016完美“圣”典风云人物:国士无双专访
2016/12/04 DOTA
简单易懂的python环境安装教程
2017/07/13 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
2018/01/04 Python
python面向对象入门教程之从代码复用开始(一)
2018/12/11 Python
python自定义函数实现一个数的三次方计算方法
2019/01/20 Python
Pycharm保存不能自动同步到远程服务器的解决方法
2019/06/27 Python
简单了解django orm中介模型
2019/07/30 Python
基于Python正确读取资源文件
2020/09/14 Python
微信小程序之html5 canvas绘图并保存到系统相册
2019/06/20 HTML / CSS
Html5之自定义属性(data-,dataset)
2019/11/19 HTML / CSS
印尼太阳百货公司网站:Matahari
2018/02/04 全球购物
托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别
2014/09/29 面试题
管理科学大学生求职信
2013/11/13 职场文书
大学生会计职业生涯规划范文
2014/02/28 职场文书
县级领导干部开展党的群众路线教育实践活动工作汇报
2014/10/25 职场文书
工作证明格式范文
2015/06/15 职场文书
Python类方法总结讲解
2021/07/26 Python
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android