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

yipeiwu_com7年前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相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

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

相关文章

Python列表list常用内建函数实例小结

本文实例总结了Python列表list常用内建函数。分享给大家供大家参考,具体如下: >>> x = list(range(10)) >>> im...

PyTorch基本数据类型(一)

PyTorch基本数据类型(一)

PyTorch基础入门一:PyTorch基本数据类型 1)Tensor(张量) Pytorch里面处理的最基本的操作对象就是Tensor(张量),它表示的其实就是一个多维矩阵,并有矩阵相...

python实现数据图表

python实现数据图表

平时压力测试,生成一些数据后分析,直接看 log 不是很直观,前段时间看到公司同事分享了一个绘制图表python 模块 : plotly, 觉得很实用,利用周末时间熟悉下。 plotl...

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

如下所示: i=0 sum1=0 sum2=0 while i<=100: if i%2==0: sum1+=i else: sum2+=i i+=...

Python 使用folium绘制leaflet地图的实现方法

Python 使用folium绘制leaflet地图的实现方法

leaflet为R语言提供了API很好用,这次尝试用Python使用leaflet,需要folium 安装folium pip install folium 一个小例子 imp...