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中列表(list)操作方法汇总
Aug 18 Python
Python基于二分查找实现求整数平方根的方法
May 12 Python
python实现多线程网页下载器
Apr 15 Python
Python 3.8中实现functools.cached_property功能
May 29 Python
python 使用plt画图,去除图片四周的白边方法
Jul 09 Python
python3使用print打印带颜色的字符串代码实例
Aug 22 Python
Python获取时间戳代码实例
Sep 24 Python
Python使用pymysql模块操作mysql增删改查实例分析
Dec 19 Python
Python基于QQ邮箱实现SSL发送
Apr 26 Python
python logging.info在终端没输出的解决
May 12 Python
如何理解python中数字列表
May 29 Python
Keras SGD 随机梯度下降优化器参数设置方式
Jun 19 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
用PHP4访问Oracle815
2006/10/09 PHP
PHP抽象类 介绍
2012/06/13 PHP
一种JavaScript的设计模式
2006/11/22 Javascript
比较详细的关于javascript 解析json的代码
2009/12/16 Javascript
快速排序 php与javascript的不同之处
2011/02/22 Javascript
javascript面向对象编程代码
2011/12/19 Javascript
JavaScript获取页面上被选中文字的方法技巧
2015/03/13 Javascript
js实现文字闪烁特效的方法
2015/12/17 Javascript
javascript实现简单计算器效果【推荐】
2016/04/19 Javascript
jQuery easyUI datagrid 增加求和统计行的实现代码
2016/06/01 Javascript
vue实现简单表格组件实例详解
2017/04/16 Javascript
Vue侧滑菜单组件——DrawerLayout
2017/12/18 Javascript
Angular数据绑定机制原理
2018/04/17 Javascript
微信小程序判断页面是否从其他页面返回的实例代码
2019/07/03 Javascript
Python下的Mysql模块MySQLdb安装详解
2014/04/09 Python
Python 编码处理-str与Unicode的区别
2016/09/06 Python
Python切换pip安装源的方法详解
2016/11/18 Python
使用Python写CUDA程序的方法
2017/03/27 Python
python自定义异常实例详解
2017/07/11 Python
python2.7 json 转换日期的处理的示例
2018/03/07 Python
python安装virtualenv虚拟环境步骤图文详解
2019/09/18 Python
python 装饰器重要在哪
2021/02/14 Python
Oakley西班牙官方商店:太阳眼镜和男女运动服
2019/04/26 全球购物
马来西亚排名第一的宠物用品店:Pets Wonderland
2020/04/16 全球购物
Tomcat Mysql datasource数据源配置
2015/12/28 面试题
AJAX都有哪些有点和缺点
2012/11/03 面试题
公务员转正考察材料
2014/02/07 职场文书
广告创意求职信
2014/03/17 职场文书
房地产公司见习自我鉴定
2014/04/28 职场文书
大学优秀班集体申报材料
2014/05/23 职场文书
毕业生入职感言
2015/07/31 职场文书
2015年评职称个人工作总结
2015/10/15 职场文书
导游词幽默开场白
2019/06/26 职场文书
导游词之茶卡盐湖
2019/11/26 职场文书
Python中使用subprocess库创建附加进程
2021/05/11 Python
vue2实现provide inject传递响应式
2021/05/21 Vue.js