码迷,mamicode.com
首页 > 编程语言 > 详细

Python语法练习--用户管理

时间:2016-07-29 20:59:11      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

程序需求:

1.判断用户是否在黑名单,匹配黑名单退出程序

2.判断用户输入的用户名和密码,三次错误退出程序,并加入黑名单

#!/usr/bin/env python
#! -*- coding:utf8 -*-
#写入用户名
user_name = open("/tmp/name.txt","w")
user_name.write("Jin\nTom\nJak\nSum")
user_name.close()

#写入密码
user_passwd = open("/tmp/passwd.txt","w")
user_passwd.write("123456\n67890\nqwert\nasdfg")
user_passwd.close()


count = 0
count_passwd = 0

for a in range(3):
    #读取用户列表和黑名单
    user_list = open("/tmp/name.txt","r")
    user_error = open("/tmp/error.txt","r")
    name_input = input("请输入您的用户名:")
    #黑名单判断:循环判断用户输入的值是否存在于黑名单,存在退出程序
    for error in user_error.readlines():
        if name_input in error.strip():
            print ("错误:用户以被锁定,程序退出,错误用户名:",name_input,"")
            break
    #用户名匹配程序
    #循环读取用户名单并赋值给i,判断用户输入的用户名是否与用户名单匹配,匹配后执行判断密码匹配程序
    else:
        for i in user_list.readlines():
            if name_input in i.strip():
                print ("用户名认证成功,请输入",name_input,"的密码:")
                break
        #用户输入的值不匹配用户名单,重复让用户输入三次,三次后仍然不匹配程序退出
        else:
            count += 1
            if count > 2:
                print ("用户名错误三次,程序退出")
                break
            else:
                print ("用户名错误,请重新输入")
                user_list = open("/tmp/name.txt","r")
                continue
        #密码匹配程序
        passwd_list = open("/tmp/passwd.txt","r")
        passwd_input = input("请输入您的密码:")
        #循环读取用密码名单并赋值给p,判断用户输入的密码是否与密码名单匹配,匹配后输出欢迎界面,退出程序
        for p in passwd_list.readlines():
            if passwd_input in p.strip():
                print ("认证成功,欢迎用户:",name_input)
                break
        #用户输入密码不匹配密码名单,重复让用户重新登录程序三次,三次不匹配,退出程序并锁定用户至黑名单
        else:
            count_passwd += 1
            if count_passwd == 3:
                print ("密码输入错误三次,用户被锁定")
                user_error = open("/tmp/error.txt","a")
                user_error.write(name_input)
                user_error.write("\n")
                user_error.close()
                break
            else:
                print ("密码错误,请重新登录")
                passwd_list = open("/tmp/passwd.txt","r")
                continue

 

Python语法练习--用户管理

标签:

原文地址:http://www.cnblogs.com/olingrobin/p/5719423.html

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