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 借助numpy保存数据为csv格式的实现方法
Jul 04 Python
数组保存为txt, npy, csv 文件, 数组遍历enumerate的方法
Jul 09 Python
django 实现编写控制登录和访问权限控制的中间件方法
Jan 15 Python
python 设置输出图像的像素大小方法
Jul 04 Python
Python依赖包整体迁移方法详解
Aug 15 Python
python将字母转化为数字实例方法
Oct 04 Python
使用python的turtle绘画滑稽脸实例
Nov 21 Python
python 爬取古诗文存入mysql数据库的方法
Jan 08 Python
Python简单实现词云图代码及步骤解析
Jun 04 Python
总结几个非常实用的Python库
Jun 26 Python
Python re.sub 反向引用的实现
Jul 07 Python
Python turtle编写简单的球类小游戏
Mar 31 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 文件上传源码分析(RFC1867)
2009/10/30 PHP
解析smarty模板中类似for的功能实现
2013/06/18 PHP
thinkphp模板输出技巧汇总
2014/11/24 PHP
PHP自毁程序(慎用)
2015/07/09 PHP
PHP正则表达式匹配替换与分割功能实例浅析
2017/02/04 PHP
PHP fprintf()函数用法讲解
2019/02/16 PHP
YII2框架中actions的作用与使用方法示例
2020/03/13 PHP
jQuery拖拽 & 弹出层 介绍与示例
2013/12/27 Javascript
js实现ArrayList功能附实例代码
2014/10/29 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
2015/10/10 Javascript
AngularJS入门教程之AngularJS表达式
2016/04/18 Javascript
微信小程序 使用picker封装省市区三级联动实例代码
2016/10/28 Javascript
jQuery Ajax请求后台数据并在前台接收
2016/12/10 Javascript
js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法分析
2016/12/27 Javascript
vue动画之点击按钮往上渐渐显示出来的实例
2018/09/29 Javascript
es6数值的扩展方法
2019/03/11 Javascript
浅谈Python中数据解析
2015/05/05 Python
Python爬取网页中的图片(搜狗图片)详解
2017/03/23 Python
基于python中staticmethod和classmethod的区别(详解)
2017/10/24 Python
利用Python正则表达式过滤敏感词的方法
2019/01/21 Python
Django框架文件上传与自定义图片上传路径、上传文件名操作分析
2019/05/10 Python
Python合并2个字典成1个新字典的方法(9种)
2019/12/19 Python
Python-jenkins 获取job构建信息方式
2020/05/12 Python
python语言实现贪吃蛇游戏
2020/11/13 Python
PyQt5中QSpinBox计数器的实现
2021/01/18 Python
canvas 绘图时位置偏离的问题解决
2020/09/16 HTML / CSS
英国度假别墅预订:Sykes Cottages
2017/06/12 全球购物
私有程序集与共享程序集有什么区别
2013/04/05 面试题
给老婆的婚前保证书
2014/02/01 职场文书
你的创业计划书怎样才能打动风投
2014/02/06 职场文书
经营理念口号
2014/06/21 职场文书
小学生美德少年事迹材料
2014/08/24 职场文书
幼儿园六一主持词开场白
2015/05/28 职场文书
高中升旗仪式主持词
2015/07/03 职场文书
pytorch中Schedule与warmup_steps的用法说明
2021/05/24 Python
SQLServer之常用函数总结详解
2021/08/30 SQL Server