LMJ123456789 发表于 2024-8-6 18:18:45

python写的猜字谜小游戏

本人小白,用Python写了个猜数字的游戏,麻烦各位大佬帮我看看写得怎么样吧,这游戏有昵称账号密码,还有3种不同模式,用户可输入对应的模式进入对应的程序,在输入的过程中还有异常处理,保证程序运行过程中不会出现异常
代码如下:

import random
import time
import os.path
class GAME:#创建一个类
    def mima_file(self):   #账号密码注册界面
      print('---账号密码注册区域---')
      name = input('你的用户名为:')
      name_file = input('')

      mi = print('你的账号为:')
      mi_file = input('')

      ma = print('你的密码为:')
      ma_file = input('')
      with open('E:\\{猜数字}-用户.txt','w') as f:
            f.write(f'昵称为:{name_file}\n账号为:{mi_file}\n密码为:{ma_file}\n---LMJ')
      print('账号创建成功')

    def main(self):#定义一个主函数,它是这个程序的主函数
      values = ['普通模式','困难模式','地狱模式']#创建一个列表,内放游戏模式,用于判断用户进入的模式
      print('欢迎来到猜数字小游戏\n作者:LMJ\n游戏编写语言:python')
      print('游戏说明:这个游戏有3种模式,分别是:普通模式,困难模式,地狱模式')
      if os.path.exists('E:\\{猜数字}-用户.txt'):   #检测指定目录是否有密码文件
            print('您已在本游戏进行注册!\n欢迎进入')    #有则进入
      else:                                       #没有的话
            print('您为在本游戏进行注册\n正在为您跳转注册中...')   #则跳转进账号注册界面
            time.sleep(2)
            self.mima_file()                              #主要跳转
      print('接下来,请输入你要进入的模式:')
      mode_choose = input('')
      if mode_choose == '普通模式':         #如果用户输入了普通模式
            return self.Normal_class()      #就进入对应的函数中运行程序
      elif mode_choose == '困难模式':      #如果用户输入了困难模式
            return self.Difficuit_class()   #就进入对应的函数中运行程序
      elif mode_choose == '地狱模式':      #如果用户输入了困难模式
            return self.Hell_class()      #就进入对应的函数中运行程序
      if mode_choose != values:         #如果用户的输入的不为列表里面某个内容
            print('输入有误')#则打印输入有误
            return            #进行返回操作,不继续执行程序
    def Normal_class(self):
      print('欢迎进入普通模式')
      print('准备好了吗?\n游戏要开始了')
      print(3)
      time.sleep(3)
      print(2)
      time.sleep(2)
      print(1)
      time.sleep(1)
      print('游戏正式开启!')
      #定义答案和用户输入界面
      unknown_file = random.randint(0,20)
      #对输入模式进行异常处理,确保程序的完整
      try:
            number_file = int(input('请输入我现在在想的数字:'))
      #如果输入的数出现ValueError,则退出程序,不在继续执行
      except ValueError:
            print('输入有误!')
            return
      #条件判断,判断输入的数是对的还是错的
      if number_file == unknown_file:
            print('我的天,你居然猜对了,你是作者心里的虫子吗?')
            print('游戏结束,恭喜你答对了,你真是太棒了')
      elif number_file > unknown_file:
            print('哎呀,大了,大了')
            print('游戏结束,很遗憾,游戏失败')
            print(f'你输入的数为:{number_file}\n正确答案为:{unknown_file}')
      elif number_file < unknown_file:
            print('哎呀,小了,小了')
            print('游戏结束,很遗憾,游戏失败')
            print(f'你输入的数为:{number_file}\n正确答案为:{unknown_file}')
    def Difficuit_class(self):
      print('欢迎进入困难模式')
      print('准备好了吗?\n游戏要开始了')
      print(3)
      time.sleep(3)
      print(2)
      time.sleep(2)
      print(1)
      time.sleep(1)
      print('游戏正式开启!')
      # 定义答案和用户输入界面
      unknown_file = random.randint(0, 50)
      # 对输入模式进行异常处理,确保程序的完整
      try:
            number_file = int(input('请输入我现在在想的数字:'))
      # 如果输入的数出现ValueError,则退出程序,不在继续执行
      except ValueError:
            print('输入有误!')
            return
      # 条件判断,判断输入的数是对的还是错的
      if number_file == unknown_file:
            print('我的天,你居然猜对了,你是作者心里的虫子吗?')
            print('游戏结束,恭喜你答对了,你真是太棒了')
      elif number_file > unknown_file:
            print('哎呀,大了,大了')
            print('游戏结束,很遗憾,游戏失败')
            print(f'你输入的数为:{number_file}\n正确答案为:{unknown_file}')
      elif number_file < unknown_file:
            print('哎呀,小了,小了')
            print('游戏结束,很遗憾,游戏失败')
            print(f'你输入的数为:{number_file}\n正确答案为:{unknown_file}')

    def Hell_class(self):
      print('欢迎进入地狱模式')
      print('准备好了吗?\n游戏要开始了')
      print(3)
      time.sleep(3)
      print(2)
      time.sleep(2)
      print(1)
      time.sleep(1)
      print('游戏正式开启!')
      # 定义答案和用户输入界面
      unknown_file = random.randint(0, 100)
      # 对输入模式进行异常处理,确保程序的完整
      try:
            number_file = int(input('请输入我现在在想的数字:'))
      # 如果输入的数出现ValueError,则退出程序,不在继续执行
      except ValueError:
            print('输入有误!')
            return
      # 条件判断,判断输入的数是对的还是错的
      if number_file == unknown_file:
            print('我的天,你居然猜对了,你是作者心里的虫子吗?')
            print('游戏结束,恭喜你答对了,你真是太棒了')
      elif number_file > unknown_file:
            print('哎呀,大了,大了')
            print('游戏结束,很遗憾,游戏失败')
            print(f'你输入的数为:{number_file}\n正确答案为:{unknown_file}')
      elif number_file < unknown_file:
            print('哎呀,小了,小了')
            print('游戏结束,很遗憾,游戏失败')
            print(f'你输入的数为:{number_file}\n正确答案为:{unknown_file}')

if __name__ == '__main__':#运行主程序
    game = GAME()
    game.main()

某一个“天” 发表于 2024-8-6 18:31:55

{:10_256:}
页: [1]
查看完整版本: python写的猜字谜小游戏