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

作者:whaben 时间:2022-04-08 13:26:28 

本文实例讲述了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()

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

PS:这里再提供几款相关工具供大家参考使用:

在线随机生成个人信息数据工具:
http://tools.jb51.net/aideddesign/rnd_userinfo

在线随机字符/随机密码生成工具:
http://tools.jb51.net/aideddesign/rnd_password

在线随机数字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu

常用电话号码在线查询:
http://tools.jb51.net/bianmin/pub_tel

希望本文所述对大家Python程序设计有所帮助。

来源:http://www.cnblogs.com/whaben/p/6500228.html

标签:Python,小游戏
0
投稿

猜你喜欢

  • python 求1-100之间的奇数或者偶数之和的实例

    2021-05-28 19:48:58
  • DOS命令行窗口mysql中文显示乱码问题解决方法

    2024-01-26 13:53:44
  • python关闭print输出信息详情

    2023-06-21 17:21:09
  • Python绘制专业的K线图 源代码解析

    2023-09-02 09:51:35
  • 实例讲解Python脚本成为Windows中运行的exe文件

    2023-07-15 02:14:31
  • python去除列表中的空值元素实战技巧

    2023-12-08 12:16:06
  • Python基于pillow库实现生成图片水印

    2021-08-01 10:45:38
  • javascript实现依次输入input自动定焦

    2024-04-28 10:19:12
  • 检测python爬虫时是否代理ip伪装成功的方法

    2021-07-31 20:23:44
  • 必备的JS调试技巧汇总

    2023-08-07 06:26:50
  • mysql8.0.11客户端无法登陆的解决方法

    2024-01-17 18:57:52
  • Python3.x+pyqtgraph实现数据可视化教程

    2023-09-25 23:24:47
  • 解决Git Bash中文乱码的问题

    2023-04-07 09:50:40
  • 关于ASP循环表格的问题之解答[比较详细]

    2011-04-08 11:14:00
  • 超简单使用Python换脸实例

    2021-07-31 17:03:36
  • python去掉行尾的换行符方法

    2021-10-24 02:36:22
  • 一篇文章带你轻松了解MySQL之事务的简介

    2024-01-20 15:57:33
  • 微信公众号H5支付接口调用方法

    2023-07-02 05:19:04
  • vim自动补全插件YouCompleteMe(YCM)安装过程解析

    2023-02-11 11:33:26
  • vue路由警告:Duplicate named routes definition问题

    2024-05-13 09:13:23
  • asp之家 网络编程 m.aspxhome.com