python实现猜数游戏(保存游戏记录)


Posted in Python onJune 22, 2020

本文实例为大家分享了python实现猜数游戏的具体代码,供大家参考,具体内容如下

内容如下:

①游戏可以重复进行,每当一个用户结束后,程序会提示是否还要继续,输入y继续,输入其他的字符退出;
②增加玩家姓名,并对该玩家的成绩进行记录,并存储在new.txt文件中;
③增加文件读取功能,即每次程序启动,都首先读取new.txt文件,并给出之前玩家的最高成绩和姓名。(当最高成绩重叠时,取最新记录)

import random
import os
if os.path.exists("D:\\new.txt")==False:  #检测文件是否存在
 file = open('D:\\' + 'new' + '.txt','w') #若不存在则立即创建
 file.close()

temp=1 #控制是否继续
while temp:
 work=random.randrange(1,101) 
 print(work)
 
 with open("D:\\new.txt") as f:    #读出最高纪录
  name=""
  socre=0
  i=1 #奇为成绩,偶为姓名
  for line in f:
   if i%2!=0:
    if socre <= int(line): #(最高成绩相同时,取最新成绩)
     socre=int(line)
     flag=1
   else:
    if temp==1:
     name=line.rstrip()
     flag=0
   i+=1
 
 achievement=100 #成绩初始为100
 time=0 #次数初始为0

 print("——————————猜数游戏——————————")
 print("\t\t请输入一个1到100的整数")
 print("\t\t游戏最高纪录%s"%name)
 print("\t\t分数为:%d"%socre)
 print("\n\t\t注意:")
 print("\t\t 满分100分,每打错一次扣2分!")
 print("\t\t 输入的不是1到100的整数,会有严厉惩罚!")
 print()
 name=str(input("请输入你的姓名:"))
 while(achievement!=0):
  try:
   num=int(input("你猜测的数是:"))
   time+=1

   if (num<1 or num>100): #整数1,100以外的情况
    print("超出范围了,你要受到惩罚!")
    achievement-=4
  
   else:
    if num==work:
     print("\t恭喜你,答对了!")
     print("\t%s的分数是%d"%(name,achievement))
     print("\t你猜数的次数是%d"%time)
     if time==1:
      print("\t你太优秀了!")
     elif 1<time<11:
      print("\t你还算优秀了!")
     elif 10<time<21:
      print("\t你还可以吧!")
     else:
      print("\t一般水平!")
      
     string=str(achievement)+"\n"   #将成绩,姓名写入
     with open("D:\\new.txt","a") as file:
      file.write(string)
     string=name+"\n"
     with open("D:\\new.txt","a") as file:
      file.write(string)
     
     break
 
    else:
     achievement-=2
     if num<work:
      print("数的范围是%d到100"%num)
     else:
      print("数的范围是1到%d!"%num)

   if achievement==0:   #成绩为0时
    print("\t对不起,你错了!")
    print("\t%s的分数是%d"%(name,achievement))
    print("\t你猜数的次数是%d"%time)
    break
 
  except:   #输入非整数时
   time+=1
   achievement-=4
   print("输入的不是整数,你要受到惩罚!")
   if achievement==0:
    print("\t对不起,你错了!")
    print("\t%s的分数是%d"%(name,achievement))
    print("\t你猜数的次数是%d"%time)
    break
 
 string=str(input("是否还要继续?(y,继续):"))   #判断继续时是否为y 
 if string!="y":
  temp=0

更多关于python游戏的精彩文章请点击查看以下专题:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
linux系统使用python监测系统负载脚本分享
Jan 15 Python
python爬虫教程之爬取百度贴吧并下载的示例
Mar 07 Python
Python 元组(Tuple)操作详解
Mar 11 Python
使用Pyrex来扩展和加速Python程序的教程
Apr 13 Python
Python字符串详细介绍
May 09 Python
基于python的Tkinter编写登陆注册界面
Jun 30 Python
Python图像处理之识别图像中的文字(实例讲解)
May 10 Python
对python For 循环的三种遍历方式解析
Feb 01 Python
pycharm 更改创建文件默认路径的操作
Feb 15 Python
Django admin 实现search_fields精确查询实例
Mar 30 Python
Python连接Impala实现步骤解析
Aug 04 Python
Python如何使用循环结构和分支结构
Apr 13 Python
基于Tensorflow读取MNIST数据集时网络超时的解决方式
Jun 22 #Python
在Mac中配置Python虚拟环境过程解析
Jun 22 #Python
tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this T
Jun 22 #Python
TensorFlow的环境配置与安装教程详解(win10+GeForce GTX1060+CUDA 9.0+cuDNN7.3+tensorflow-gpu 1.12.0+python3.5.5)
Jun 22 #Python
keras的load_model实现加载含有参数的自定义模型
Jun 22 #Python
python GUI模拟实现计算器
Jun 22 #Python
keras CNN卷积核可视化,热度图教程
Jun 22 #Python
You might like
快速配置PHPMyAdmin方法
2008/06/05 PHP
PHP钩子与简单分发方式实例分析
2017/09/04 PHP
JavaScript 学习笔记(十六) js事件
2010/02/01 Javascript
JS验证邮箱格式是否正确的代码
2013/12/05 Javascript
Jquery中&quot;$(document).ready(function(){ })&quot;函数的使用详解
2013/12/30 Javascript
JQ技术实现注册页面带有校验密码强度
2015/07/27 Javascript
Javascript动画效果(1)
2016/10/11 Javascript
在JSP中如何实现MD5加密的方法
2016/11/02 Javascript
浅谈jQuery hover(over, out)事件函数
2016/12/03 Javascript
解决JSON.stringify()自动将中文转译成unicode的问题
2018/01/05 Javascript
Echarts实现多条折线可拖拽效果
2019/12/19 Javascript
[00:14]护身甲盾
2019/03/06 DOTA
python实现基于两张图片生成圆角图标效果的方法
2015/03/26 Python
Python中使用logging模块打印log日志详解
2015/04/05 Python
Python中的推导式使用详解
2015/06/03 Python
Python中列表元素转为数字的方法分析
2016/06/14 Python
详解python脚本自动生成需要文件实例代码
2017/02/04 Python
Python numpy.array()生成相同元素数组的示例
2018/11/12 Python
使用 Python 快速实现 HTTP 和 FTP 服务器的方法
2019/07/22 Python
Django之编辑时根据条件跳转回原页面的方法
2019/08/21 Python
Python3使用xml.dom.minidom和xml.etree模块儿解析xml文件封装函数的方法
2019/09/23 Python
最新PyCharm从安装到PyCharm永久激活再到PyCharm官方中文汉化详细教程
2020/11/17 Python
Pycharm 如何一键加引号的方法步骤
2021/02/05 Python
台湾7-ELEVEN线上购物中心:7-11
2021/01/21 全球购物
销售会计工作职责
2013/12/02 职场文书
大学团支书的自我评价分享
2013/12/14 职场文书
大学生实习思想汇报
2014/01/12 职场文书
销售员岗位职责范本
2014/02/03 职场文书
自荐信的基本格式
2014/02/22 职场文书
公司2014年度工作总结
2014/12/10 职场文书
工程服务质量承诺书
2015/04/29 职场文书
主持人大赛开场白
2015/05/29 职场文书
培训心得体会怎么写
2016/01/25 职场文书
PyTorch 如何自动计算梯度
2021/05/23 Python
聊聊Lombok中的@Builder注解使用教程
2021/11/17 Java/Android
SQL语法CONSTRAINT约束操作详情
2022/01/18 MySQL