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 相关文章推荐
python实现探测socket和web服务示例
Mar 28 Python
python字符串连接的N种方式总结
Sep 17 Python
python实现TCP服务器端与客户端的方法详解
Apr 30 Python
python实现FTP服务器服务的方法
Apr 11 Python
Python学习小技巧之列表项的拼接
May 20 Python
Python实现针对给定字符串寻找最长非重复子串的方法
Apr 21 Python
Django学习教程之静态文件的调用详解
May 08 Python
Django ORM多对多查询方法(自定义第三张表&amp;ManyToManyField)
Aug 09 Python
Python爬虫之urllib基础用法教程
Oct 12 Python
如何向scrapy中的spider传递参数的几种方法
Nov 18 Python
如何查看python关键字
Jan 17 Python
详解Python+OpenCV绘制灰度直方图
Mar 22 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
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
php使用curl简单抓取远程url的方法
2015/03/13 PHP
php原生导出excel文件的两种方法(推荐)
2016/11/19 PHP
PHP xpath()函数讲解
2019/02/11 PHP
PHP实现批量修改文件名的方法示例
2019/09/18 PHP
laravel解决迁移文件一次删除创建字段报错的问题
2019/10/24 PHP
javascript中怎么做对象的类型判断
2013/11/11 Javascript
Javascript学习笔记之数组的遍历和 length 属性
2014/11/23 Javascript
详解JavaScript对W3C DOM模版的支持情况
2015/06/16 Javascript
jquery+Jscex打造游戏力度条
2020/09/12 Javascript
12 款 JS 代码测试必备工具(翻译)
2016/12/13 Javascript
js多个物体运动功能实例分析
2016/12/20 Javascript
详解Jquery Easyui的验证扩展
2017/01/09 Javascript
jquery拖动改变div大小
2017/07/04 jQuery
vue 动态改变静态图片以及请求网络图片的实现方法
2018/02/07 Javascript
解决Layui 表单提交数据为空的问题
2018/08/15 Javascript
vue实现文字加密功能
2019/09/27 Javascript
基于JS实现简单滑块拼图游戏
2019/10/12 Javascript
JS对日期操作封装代码实例
2019/11/08 Javascript
JS实现商城秒杀倒计时功能(动态设置秒杀时间)
2019/12/12 Javascript
javascript实现前端成语点击验证优化
2020/06/24 Javascript
Python的__builtin__模块中的一些要点知识
2015/05/02 Python
日常整理python执行系统命令的常见方法(全)
2015/10/22 Python
Python中import机制详解
2017/11/14 Python
python3模块smtplib实现发送邮件功能
2018/05/22 Python
python实现将一个数组逆序输出的方法
2018/06/25 Python
Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
2018/09/14 Python
解决python3 安装完Pycurl在import pycurl时报错的问题
2018/10/15 Python
python实现根据指定字符截取对应的行的内容方法
2018/10/23 Python
python基于paramiko将文件上传到服务器代码实现
2019/07/08 Python
python爬虫之快速对js内容进行破解
2019/07/09 Python
python matplotlib库直方图绘制详解
2019/08/10 Python
Django REST框架创建一个简单的Api实例讲解
2019/11/05 Python
突袭HTML5之Javascript API扩展5—其他扩展(应用缓存/服务端消息/桌面通知)
2013/01/31 HTML / CSS
Nobody Denim官网:购买高级女士牛仔裤
2021/03/15 全球购物
2015年乡镇卫生院工作总结
2015/04/22 职场文书