python实现石头剪刀布小游戏


Posted in Python onJanuary 20, 2021

本文实例为大家分享了python实现石头剪刀布的具体代码,供大家参考,具体内容如下

老师布置了一个石头剪刀布的作业,要可视化,还是先用代码实现再说可视化的事。

环境:window7,Python 3.5

代码:

#coding=utf-8
import random

exit_flag = False #设置flag用于break跳出两层循环,或者自定义异常也行,try:, except。
dic = {}
dic[0] = '剪刀'
dic[1] = '石头'
dic[2] = '布'

while True:
 humanStr = input("请输入[0:剪刀 1:石头 2:布] ")
 if humanStr.isdigit() and (int(humanStr) in [0,1,2]): #如果输入的是数字,并且在0,1,2中 
 human = int(humanStr) 
 windows = random.randint(0, 2)

 print ("你出的是%s,电脑出的是%s" % (dic[human],dic[windows]))

 if (human == 0 and windows == 2) or (human == 1 and windows == 0) or (human == 2 and windows == 1):
 print("祝贺你,你赢了!")
 oncemore = input("你想再来一局吗? y(Y) or n(N) ")
 elif human == windows:
 print("平局")
 oncemore = input("你想再来一局吗? y(Y) or n(N) ")
 else:
 print("不好意思,你输了")
 oncemore = input("你想再来一局吗? y(Y) or n(N) ")

 while True:
 if oncemore == 'y' or oncemore == 'Y':
 break
 elif oncemore == 'n' or oncemore == 'N':
 exit_flag = True
 break #跳出内层循环,并且设置flag
 else:
 oncemore = input("你想再来一局吗? y(Y) or n(N) ")
 if exit_flag == True:
 break #跳出层循环,结束程序

 else:
 print ("请重新输入!")
 pass

python实现石头剪刀布小游戏

PS:这里想要记录一下python2中input和raw_input的区别,以及python3中的input

对于python2:

input和raw_input都能接受字符串, raw_input()将所有输入作为字符串看待,返回字符串类型,而input()在对待输入纯数字时,返回数字类型(int,float),对待字符串的话,输入的字符串必须使用引号引起来,表明是个字符串,返回类型为字符串

python实现石头剪刀布小游戏

对于python3:

将raw_input()和input()进行了整合,去除了raw_input(),仅保留了input()函数,其接受任意性输入,将所有的输入都默认为字符串类型处理,并返回字符串类型。

python实现石头剪刀布小游戏

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python yield使用方法示例
Dec 04 Python
Python实现提取文章摘要的方法
Apr 21 Python
python实现按任意键继续执行程序
Dec 30 Python
python实现12306火车票查询器
Apr 20 Python
python实现发送邮件功能
Jul 22 Python
pandas apply 函数 实现多进程的示例讲解
Apr 20 Python
详解Python学习之安装pandas
Apr 16 Python
Python 实现训练集、测试集随机划分
Jan 08 Python
Python使用scapy模块发包收包
May 07 Python
怎么用Python识别手势数字
Jun 07 Python
Python制作春联的示例代码
Jan 22 Python
Python Matplotlib绘制动画的代码详解
May 30 Python
对Python3之进程池与回调函数的实例详解
Jan 22 #Python
python多任务及返回值的处理方法
Jan 22 #Python
opencv实现静态手势识别 opencv实现剪刀石头布游戏
Jan 22 #Python
python自动发送测试报告邮件功能的实现
Jan 22 #Python
python3去掉string中的标点符号方法
Jan 22 #Python
在Python中将函数作为另一个函数的参数传入并调用的方法
Jan 22 #Python
python3.4爬虫demo
Jan 22 #Python
You might like
用PHP产生动态的影像图
2006/10/09 PHP
javascript设计模式--策略模式之输入验证
2015/11/27 Javascript
基于Jquery插件实现跨域异步上传文件功能
2016/04/26 Javascript
Easyui 之 Treegrid 笔记
2016/04/29 Javascript
jquery获取img的src值的简单实例
2016/05/17 Javascript
jQuery获取select选中的option的value值实现方法
2016/08/29 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
mui开发中获取单选按钮、复选框的值(实例讲解)
2017/07/24 Javascript
jQuery除指定区域外点击任何地方隐藏DIV功能
2017/11/13 jQuery
AngularJS实现的根据数量与单价计算总价功能示例
2017/12/26 Javascript
使用async await 封装 axios的方法
2018/07/09 Javascript
js获取浏览器地址(获取第1个斜杠后的内容)
2019/09/03 Javascript
微信小程序 组件的外部样式externalClasses使用详解
2019/09/06 Javascript
layui文件上传控件带更改后数据传值的方法
2019/09/23 Javascript
[01:03:27]Optic vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python生成pdf文件的方法
2014/08/04 Python
Python基础知识_浅谈用户交互
2017/05/31 Python
详解python 利用echarts画地图(热力图)(世界地图,省市地图,区县地图)
2019/08/06 Python
wxPython绘图模块wxPyPlot实现数据可视化
2019/11/19 Python
python调用接口的4种方式代码实例
2019/11/19 Python
Python @property装饰器原理解析
2020/01/22 Python
python实现批量修改文件名
2020/03/23 Python
python输出国际象棋棋盘的实例分享
2020/11/26 Python
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
2016/03/12 面试题
生物科学专业职业规划书范文
2014/02/11 职场文书
计算机网络及管理学专业求职信
2014/06/05 职场文书
用人单位终止解除劳动合同证明书
2014/10/06 职场文书
清洁员岗位职责
2015/02/15 职场文书
道歉的话怎么说
2015/05/12 职场文书
埃及王子观后感
2015/06/16 职场文书
2015年城乡环境综合治理工作总结
2015/07/24 职场文书
超级实用!五步法则,教你写好年终工作总结
2019/12/05 职场文书
Go 语言下基于Redis分布式锁的实现方式
2021/06/28 Golang
Selenium浏览器自动化如何上传文件
2022/04/06 Python
mysql中如何用命令创建联合唯一索引
2022/04/20 MySQL
Python实现将多张图片合成MP4视频并加入背景音乐
2022/04/28 Python