码迷,mamicode.com
首页 > 其他好文 > 详细

用户登陆系统

时间:2018-01-21 12:28:11      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:语句   encoding   复用   pos   class   txt   use   pen   col   

1.最基础的,用户名密码放到一个文件里,可以注册登陆查询注册用户名是否重复

def login(username, password):
    ‘‘‘
    登录
    :param username:用户输入的用户名
    :param password: 用户输入的密码
    :return:验证成功
    ‘‘‘
    with open(userinfo.txt, r, encoding=utf-8) as oplogin:
        for line in oplogin:
            if line.split(%%)[0] == username and line.split(%%)[1] == password:
                return True
    return False


def register(username, password):
    ‘‘‘
    注册
    :param username: 用户输入的用户名
    :param password: 用户输入的密码
    :return: 写入文件注册成功
    ‘‘‘
    with open(userinfo.txt, a, encoding=utf-8) as opreg:
        opreg.write(\n + username + %% + password)
        return print(注册成功)


def same(username):
    ‘‘‘
    查是否重复用户名
    :param username: 用户输入用户名
    :return:如果重复返回True,没有重复返回Flase
    ‘‘‘
    with open(userinfo.txt, r, encoding=utf-8) as opsame:
        for line in opsame:
            line = line.strip()
            if line.split(%%)[0] == username:
                return True
    return False  # 这个return要在最外层,而不是在if语句里


def main():
    choice = input(1:login,2:register)
    if choice == 1:
        username = input(username)
        password = input(password)
        if login(username, password):
            print(登录成功)
        else:
            print(登录失败)
    if choice == 2:
        username = input(username)
        password = input(password)
        if same(username):
            print(用户名已被占用)
            main()
        else:
            register(username, password)


main()

2.做一个增强版,在上面的基础上将文件储存为字典,用户名是键,值是包含密码和手机号的 列表,密码需要包含字母和数字,手机号只能11位,通过用户名手机号可以更改密码,可以删除用户,通过用户名密码可以变更手机号,登陆失败的时候可以尝试三次,三次后退出

 

用户登陆系统

标签:语句   encoding   复用   pos   class   txt   use   pen   col   

原文地址:https://www.cnblogs.com/xusuns/p/8323685.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!