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 相关文章推荐
Python调用命令行进度条的方法
May 05 Python
python简单获取本机计算机名和IP地址的方法
Jun 03 Python
python如何统计序列中元素
Jul 31 Python
Python DataFrame设置/更改列表字段/元素类型的方法
Jun 09 Python
Python爬虫之正则表达式基本用法实例分析
Aug 08 Python
Django框架的中的setting.py文件说明详解
Oct 15 Python
widows下安装pycurl并利用pycurl请求https地址的方法
Oct 15 Python
pygame实现成语填空游戏
Oct 29 Python
新手常见Python错误及异常解决处理方案
Jun 18 Python
Python字符串三种格式化输出
Sep 17 Python
Python3压缩和解压缩实现代码
Mar 01 Python
详解Python flask的前后端交互
Mar 31 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
用Flash图形化数据(一)
2006/10/09 PHP
smtp邮件发送一例
2006/10/09 PHP
基于PHP读取csv文件内容的详解
2013/06/18 PHP
php发送html格式文本邮件的方法
2015/06/10 PHP
YII Framework框架教程之安全方案详解
2016/03/14 PHP
PHP实现简易blog的制作
2016/10/24 PHP
PHP实现图片批量打包下载功能
2017/03/01 PHP
基于PHP实现栈数据结构和括号匹配算法示例
2017/08/10 PHP
php实现与python进行socket通信的方法示例
2017/08/30 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
Javascript中的for in循环和hasOwnProperty结合使用
2013/06/05 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
javascript中的作用域和闭包详解
2016/01/13 Javascript
分享JS数组求和与求最大值的方法
2016/08/11 Javascript
基于JavaScript实现窗口拖动效果
2017/01/18 Javascript
requirejs按需加载angularjs文件实例
2017/06/08 Javascript
基于zepto.js实现登录界面
2017/10/09 Javascript
解决layer图标icon不加载的问题
2019/09/04 Javascript
JS回调函数简单易懂的入门实例分析
2019/09/29 Javascript
解决vue单页面多个组件嵌套监听浏览器窗口变化问题
2020/07/30 Javascript
Python的Scrapy爬虫框架简单学习笔记
2016/01/20 Python
Swift中的协议(protocol)学习教程
2016/07/08 Python
Python中optparser库用法实例详解
2018/01/26 Python
python替换字符串中的子串图文步骤
2019/06/19 Python
python实现智能语音天气预报
2019/12/02 Python
python小项目之五子棋游戏
2019/12/26 Python
pymysql之cur.fetchall() 和cur.fetchone()用法详解
2020/05/15 Python
英国豪华真皮和布艺沙发销售网站:Darlings of Chelsea
2018/01/05 全球购物
体育课课后反思
2014/04/24 职场文书
住院医师规范化培训实施方案
2014/06/12 职场文书
学校四风对照检查材料
2014/08/28 职场文书
重阳节标语大全
2014/10/07 职场文书
2016元旦文艺汇演主持词
2015/07/06 职场文书
《祁黄羊》教学反思
2016/02/20 职场文书
Windows中Redis安装配置流程并实现远程访问功能
2021/06/07 Redis
Python中的 No Module named ***问题及解决
2022/07/23 Python