Python实现的摇骰子猜大小功能小游戏示例


Posted in Python onDecember 18, 2017

本文实例讲述了Python实现的摇骰子猜大小功能小游戏。分享给大家供大家参考,具体如下:

最近学习Python的随机数,逻辑判断,循环的用法,就想找一些练习题,比如小游戏猜大小,程序思路如下:

Python实现的摇骰子猜大小功能小游戏示例

开发环境:python2.7 , 附上源代码如下:

摇骰子的函数,这个函数其实并不需要传任何参数,调用后会返回三个点数结果的列表。

import random
def roll_dice(numbers=3,points=None):
  print ('<<<<< ROLL THE DICE! >>>>>')
  if points is None:
    points = []
  while numbers > 0:
    point = random.randint(1,6)
    points.append(point)
    numbers = numbers-1
  return points

接着再用一个函数来将点数转化成大小

def roll_result(total):
  isBig = 11 <=total <= 18
  isSmall = 3 <= total <= 10
  if isBig:
    return 'Big'
  elif isSmall:
    return 'Small'

最后,创建一个开始游戏的函数,让用户输入猜大小,并且定义什么是猜对,什么是猜错,并输出对应的输赢结果。

def start_game():
  print ('<<<<< GAME STARTS! >>>>>')
  choices=['Big','Small']
  your_choice=raw_input('Big or Small')
  if your_choice in choices:
    points = roll_dice()
    total = sum(points)
    youWin = your_choice == roll_result(total)
    if youWin:
      print('The points are',points,'You win !')
    else:
      print('The points are',points,'You lose !')
  else:
    print('Invalid Words')
    start_game()
start_game()

完成这个小游戏之后,你就可以试着和自己设计的程序玩猜大小了。同时你也掌握了循环和条件判断混用的方法,初步具备了设计更复杂的程序的能力了。

Python 相关文章推荐
PyQt5每天必学之弹出消息框
Apr 19 Python
详解python3中tkinter知识点
Jun 21 Python
Python模块的加载讲解
Jan 15 Python
python3.7实现云之讯、聚合短信平台的短信发送功能
Sep 26 Python
Python操作qml对象过程详解
Sep 26 Python
Python中的四种交换数值的方法解析
Nov 18 Python
Python接口测试get请求过程详解
Feb 28 Python
Pyecharts 动态地图 geo()和map()的安装与用法详解
Mar 25 Python
python中for in的用法详解
Apr 17 Python
python中return不返回值的问题解析
Jul 22 Python
Python logging模块进行封装实现原理解析
Aug 07 Python
Python预测分词的实现
Jun 18 Python
简单实现python进度条脚本
Dec 18 #Python
Python编程使用*解包和itertools.product()求笛卡尔积的方法
Dec 18 #Python
通过Python 获取Android设备信息的轻量级框架
Dec 18 #Python
python中列表和元组的区别
Dec 18 #Python
Django REST为文件属性输出完整URL的方法
Dec 18 #Python
Python3计算三角形的面积代码
Dec 18 #Python
利用python解决mysql视图导入导出依赖的问题
Dec 17 #Python
You might like
Views rows style模板重写代码
2011/05/16 PHP
PHP递归返回值时出现的问题解决办法
2013/02/19 PHP
php根据分类合并数组的方法实例详解
2013/11/06 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
2016/03/25 PHP
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
Jquery实战_读书笔记1—选择jQuery
2010/01/22 Javascript
javascript进行四舍五入方法汇总
2014/12/16 Javascript
原生JavaScript实现滚动条效果
2020/03/24 Javascript
基于Vuejs的搜索匹配功能实现方法
2018/03/03 Javascript
vue2.0 实现导航守卫(路由守卫)
2018/05/21 Javascript
JavaScript 高性能数组去重的方法
2018/09/20 Javascript
教你完全理解ReentrantLock重入锁
2019/06/03 Javascript
浅谈Three.js截图并下载的大坑
2019/11/01 Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
2020/07/26 Javascript
Python的ORM框架中SQLAlchemy库的查询操作的教程
2015/04/25 Python
Python实现线程池代码分享
2015/06/21 Python
Python3 模块、包调用&amp;路径详解
2017/10/25 Python
用Python下载一个网页保存为本地的HTML文件实例
2018/05/21 Python
用django-allauth实现第三方登录的示例代码
2019/06/24 Python
python matplotlib库绘制散点图例题解析
2019/08/10 Python
Pandas之read_csv()读取文件跳过报错行的解决
2020/04/21 Python
Python为何不支持switch语句原理详解
2020/10/21 Python
python代码实现猜拳小游戏
2020/11/30 Python
台湾乐天市场:日本No.1的网路购物网站
2017/03/22 全球购物
国际知名军事风格休闲装品牌:Alpha Industries(阿尔法工业)
2017/05/24 全球购物
PHP面试题及答案一
2012/06/18 面试题
分别介绍一下Session Bean和Entity Bean
2015/03/13 面试题
校园新闻广播稿
2014/01/10 职场文书
公司员工检讨书
2014/02/08 职场文书
小学老师寄语大全
2014/04/04 职场文书
奥巴马获胜演讲稿
2014/05/15 职场文书
2015入党自荐书范文
2015/03/05 职场文书
2015年美容师个人工作总结
2015/10/14 职场文书
如何使用flask将模型部署为服务
2021/05/13 Python
深入讲解数据库中Decimal类型的使用以及实现方法
2022/02/15 MySQL
Python 匹配文本并在其上一行追加文本
2022/05/11 Python