1 # !/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # Author:chen hongliang 4 5 i = 0 6 while i < 3: 7 user_name = input('请输入用户名:') 8 lock_file = open('account_lock.txt', 'r+') # 调用open()函数以读的方式读取用户锁定文件中的信息 9 lock_list = lock_file.readlines() # 逐行读取元素到列表中 10 11 # 判断用户名是否锁定 12 for lock_line in lock_list: 13 if user_name == lock_line.strip('\n'): # strip()函数用于去除字符串头尾指定的字符串(默认为空格) 14 print('用户 %s 已经锁定,请联系管理员!' % user_name) 15 exit(1) 16 17 user_file = open('account.txt', 'r') # 调用open()函数读取用户文件 18 user_list = user_file.readlines() 19 20 # 判断用户名是否存在 21 for user_line in user_list: 22 (name, password) = user_line.strip('\n').split() # 先调用strip()函数去掉字符串头尾的'\n'字符, 23 # 再用split()函数将字符串以指定字符(默认是空格)分开,分别获得用户名和密码 24 25 # 当用户名存在时,有三次输入密码的机会 26 if user_name == name: 27 j = 0 28 while j < 3: 29 user_password = input('请输入用户密码:') 30 if user_password == password: 31 print('%s先生/女士 欢迎您登陆系统!' % user_name) 32 exit(0) 33 34 # 当密码不正确时,进行提示剩余输入机会 35 if j != 2: 36 print('您的密码输入错误,您还有%d次机会,请重新输入! ' % (2-j)) 37 38 j += 1 39 40 # while循环执行结束(即密码三次输入错误)则用户锁定,将用户名添加到account_lock.txt文件中 41 else: 42 lock_file.write(user_name + '\n') 43 print('密码输入错误,用户%s已锁定' % user_name) 44 exit(1) 45 46 else: 47 pass 48 49 # 当for循环一直执行完(即用户名不存在时) 50 else: 51 if i != 2: 52 print('用户名输入错误,您还剩%d次机会,请重新输入!' % (2-i)) 53 54 i += 1 55 56 lock_file.close() 57 user_file.close()
用python写一个用户登陆程序
猜你喜欢
转载自www.cnblogs.com/chl07-25/p/9788430.html
今日推荐
周排行