猜数字游戏,用户简单登录界面

import random

# 第一次登录或者注册,先创建一个文本文件

print("""欢迎使用本系统
1.登录
2.注册
3.退出
""")
cmd=eval(input("输入命令序号:"))

while 1:
    # 注册账号
    if cmd==2:
        print("欢迎注册!")
        user_name=input("账号名:")
        temp=1
        # 打开文件users_data.text,一一读取文件内容与注册账号对比
        f=open("users_data.text","r")
        for line in f:
            line=eval(line)
            if user_name==line[0]:
                print("该用户名存在,请从新注册!")
                temp=0
        f.close()
        # 存在账号,则从新注册
        if temp==0:
            continue
        # 不存在账号则设置密码
        passward=input("密码 :")
        nextpwd=input("确认密码:")
        # 判断两次密码是否相同
        if passward!=nextpwd:
            print("两次输出密码不相同,请从新注册!")
            continue
        # 相同执行else,打开文件,把注册的信息写入到文件
        else:
            reg_user = (user_name, passward)
            f=open("users_data.text","a",encoding='UTF-8')
            f.write("{}\n".format(reg_user))
            f.close()
        # 注册完后,还要登录该账号
        print("恭喜完成注册!登录账号后开始游戏!")
        cmd=1
    # 登录账号
    elif cmd==1:
        name = input("输入账号:")
        temp = 1
        # 读取文件内容,余输入账号对比
        f=open("users_data.text","r")
        for line in f:
            line=eval(line)
            if name == line[0]:
                temp = 0
                break
        f.close()
        # 如果文件没有该登录的账号,就跳转到注册界面
        if temp != 0:
            print("账号还未注册,请先注册!")
            cmd=2
            continue
        # 有账号就输入密码,然后再次打开文件,比对账号和密码是否一致
        pwd = input("输入密码:")
        temp = 1
        f=open("users_data.text","r")
        for line in f:
            line=eval(line)
            if name == line[0] and pwd == line[1]:
                print("登录成功!")
                reg_user = (name, pwd)
                temp = 0
                break
        f.close()
        # 一致则登录成功,不一致则登录失败,从新登录
        if temp != 0:
            print("密码或账户不符,请从新登录")
        else:
            break
    # 退出系统
    else:
        exit()

score=list()
while 1:
    print("""欢迎{}使用本系统
        #     1.开始游戏
        #     2.查询分数
        #     3.退出
        #     """.format(reg_user[0]))
    cmd1 = eval(input("请输入游戏命令:"))
    # 开始游戏
    if cmd1==1:
        while 1:
            cnt = 0
            # 产生一个随机数
            guess_num = random.randint(1, 100)
            while 1:
                num = input("请输入一个数字:")
                # cnt由于计算分数
                cnt += 1
                num = eval(num)
                if guess_num == num:
                    print("您的得分为{}".format(11 - cnt))
                    score=(11-cnt)
                    temp=eval(input("再玩一次玩输入1,退出输入0:"))
                    break
                elif guess_num > num:
                    print("猜小了!")
                else:
                    print("猜大了!")
            if temp==0:
                break
    # 查看玩家得分
    elif cmd1==2:
        print("得分为{}".format(score))
        input("回车返回主界面!")
    # 退出游戏
    else:
        print("欢迎再次光临!")
        exit()

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值