美文网首页
python_day17_homework

python_day17_homework

作者: Z_JoonGi | 来源:发表于2019-03-27 08:52 被阅读0次
    import json
    
    
    class InputError(Exception):
        def __str__(self):
            return '请根据提示输入正确的数字'
    
    class StuSys:
        def __init__(self, sys_name):
            self.sys_name = sys_name
    
        def show_home(self):
            return """
        ======================================
                欢迎来到%s学生管理系统
    
                ◆ 1.登              录
                ◆ 2.注              册
                ◆ 3.退              出
        ======================================""" % self.sys_name
    
    
        def start_sys(self):
            flag = 1
            while flag:
                print(self.show_home())
                choice1 = int(input('请选择(1-3):'))
                if choice1 == 1:
                    StuSys.login_in()
                elif choice1 == 2:
                    StuSys.register()
                elif choice1 == 3:
                    break
                else:
                    raise InputError
    
    
    
    
      @classmethod
      def login_in(cls):
            """登录"""
            while True:
                account = input('请输入账号:')
                password = input('请输入密码:')
                stu = {'account': account, 'password': password}
                with open('students.txt', 'r', encoding='utf-8') as f:
                    students = json.load(f)
                stu_accounts = []
                for student in students:
                    if student['account'] == account:
                        if student['password'] ==password:
                            input('登陆成功')
                            return 
                        else:
                            input('登录失败!密码错误!')
                            return
                    else:
                        input('登录失败!账号不存在!')
                        return
    
                @classmethod
            def register(cls):
            """注册"""
            while True:
                flag = 0
                account = input('请输入账号:')
                password = input('请输入密码:')
                stu = {'account': account, 'password': password}
                with open('students.txt', 'r', encoding='utf-8') as f:
                    students = json.load(f)
                for student in students:
                    if student['account'] == account:
                        input('账号已存在,请按下任意键重新输入账号')
                        flag = 1
                        break
                if flag:
                    continue
                else:
                    students.append(stu)
                    with open('students.txt', 'w', encoding='utf-8') as f:
                        json.dump(students, f)
                        input('注册成功! 请按下任意键返回上一层')
                        break
    
    
    
    
    
    def main():
        c1 = StuSys('千峰')
        c1.start_sys()
    
    
    if __name__ == '__main__':
        main()
    

    相关文章

      网友评论

          本文标题:python_day17_homework

          本文链接:https://www.haomeiwen.com/subject/odnnvqtx.html