欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python实现简单的用户管理系统的步骤教程

程序员文章站 2022-07-08 18:46:32
用户管理系统 1.注册新用户 如果注册用户已经存在,则报错 需要填写信息: name, passwd, gender, email,age 2.用户登录 要求同之前写的用户...

用户管理系统

1.注册新用户

如果注册用户已经存在,则报错

需要填写信息: name, passwd, gender, email,age

2.用户登录 要求同之前写的用户登录系统

3.注销用户 用户注销时,需要输入用户名和正确的用户密码

4.显示用户信息 显示系统中存在所有已经注册用户的信息

5.退出系统

代码如下

#!/usr/bin/env python
#coding:utf-8

info = """
************************************************************
                       用户登录管理系统
************************************************************

                   1. 注册新用户
                   2. 用户登录
                   3. 用户注销
                   4. 用户信息显示
                   5. 退出系统
"""
userinfo = {

    'root': {
        'name': 'root',
        'password': 'redhat',
        'gender': 1,
        'email': '',
        'age': 12
    },
}

gender_choice = [0, 1, 2]

def CreateUser():
    print "注册用户界面".center(50, '*')
    name = raw_input("*注册用户名:")
    if name in userinfo:
        print "用户已存在,请更换注册名"
    else:
        password = raw_input("*用户密码:")
        while True:
            gender = input("*性别(0-男 1-女 2-其他):")
            if gender in gender_choice:
                break
            else:
                print "请输入正确的选择"

        email = raw_input("用户邮箱:")
        if not email:
            email = None
        age = raw_input("年龄:")
        if not age:
            age = None
        else:
            age = int(age)
        userinfo[name] = {
            'name': name,
            'password': password,
            'gender':   gender,
            'email':    email,
            'age':      age,
        }
        print "%s 用户注册成功!!!" % (name)

def UserLogin():
    print "用户登录界面".center(50, '*')
    trycount = 0
    while trycount < 3:
        name = raw_input("登录用户名:")
        if name not in userinfo:
            print "用户未注册"
            break
        password = raw_input("登录密码:")
        trycount += 1
        if password == userinfo[name]['password']:
            print "恭喜%s登录成功" % (name)
            break
        else:
            print "请输入正确的用户名或密码!"
    else:
        print "已登录三次,请稍后再试"


def DeleteUser():
    print "用户注销界面".center(50, '*')
    name = raw_input("注销用户名:")
    if name not in userinfo:
        print "用户未注册"
    else:
        password = raw_input("登录密码:")
        if password == userinfo[name]['password']:
            userinfo.pop(name)
            print "恭喜注销%s成功" % (name)

def UserInfo():
    for key, value in userinfo.items():
        print "用户:%s" % (key),
        print "性别:%d" % (value['gender']),
        print "邮箱:%s" % (value['email']),
        print "年龄:%s" % (value['age']),
        print "\n\n"

def main():
    while True:
        print info
        choice = raw_input("Choice:").strip()
        if choice == "1":
            CreateUser()
        elif choice == "2":
            UserLogin()
        elif choice == "3":
            DeleteUser()
        elif choice == "4":
            UserInfo()
        elif choice == "5":
            exit()
        else:
            print "输入正确的选择"

main()