鱼C论坛

 找回密码
 立即注册
查看: 129|回复: 1

[原创] python写的猜字谜小游戏

[复制链接]
发表于 2024-8-6 18:18:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本人小白,用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()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-8-6 18:31:55 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-16 10:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表