python之编写登陆接口(第一天)

作业:编写登陆接口

  • 输入用户名密码
  • 认证成功后显示欢迎信息
  • 输错三次后锁定

帐号文件account.txt内容如下:



sam 123

david 12 
kevin 123
lin 12 
tailen 123 
jack 12



锁文件account_lock.txt默认为空

1、流程图如下:

二、针对帐号文件里的不存在的用户也可以进行判断并锁定,针对用户和密码共有三次错误重试机会

 1 #_*_ coding:utf-8 _*_
 2
 3 import sys,os,getpass
 4
 5 os.system(‘clear‘)
 6
 7 retry_limit = 3
 8 retry_count = 0
 9
10 account_file = ‘account.txt‘
11 lock_file = ‘account_lock.txt‘
12
13 while retry_count < retry_limit:                                         #只要重试不超过3次就不断循环
14     username = raw_input(‘\033[31;43mUsername:\033[0m‘)
15     username = username.strip()
16     lock_check = open(lock_file)                                         #当用户输入用户名后,打开LOCK 文件 以检查是否此用户已经LOCK了
17
18     for line in lock_check.readlines():                                  #循环LOCK文件
19         if username == line.strip(‘\n‘):                                  #去掉换行符
20             sys.exit(‘\033[35mUser %s is locked!!!\033[0m‘ % username)   #如果LOCK了就直接退出
21     password = raw_input(‘\033[32;41mPassword:\033[0m‘)                  #输入密码
22
23     f = open(account_file,‘r‘)                                           #打开帐号文件
24     match_flag = False                                                   # 默认为Flase,如果用户match 上了,就设置为 True
25
26     for line in f.readlines():
27         user,passwd = line.strip(‘\n‘).split()                           #去掉每行多余的\n并把这一行按空格分成两列,分别赋值为user,passwd两个变量
28         if username == user and password == passwd:                      #判断用户名和密码是否都相等
29            print(‘hello, %s !!‘ % username)
30            match_flag = True                                             #相等就把循环外的match_flag变量改为了True
31            break                                                         #然后就不用继续循环了,直接 跳出,因为已经match上了
32     f.close()
33
34     if match_flag == False:                                              #如果match_flag还为False,代表上面的循环中跟本就没有match上用户名和密码,所以需要继续循环
35         print(‘sorry,%s is unmatched‘ % username)
36         retry_count += 1                                                 #计数器加1
37     else:
38         print(‘wlecome login my learning system!‘)
39         break                                                            #用户成功登录,退出脚本
40
41 else:
42     print("you account %s is locked!!!" % username)
43     g = open(lock_file,‘a‘)
44     g.write(username)                                                    #被锁用户追加到用户锁文件
45     g.write(‘\n‘)
46     g.close()

原文地址:https://www.cnblogs.com/yandongdong/p/8579381.html

时间: 2024-10-07 09:10:01

python之编写登陆接口(第一天)的相关文章

python之编写登陆接口(测试中...)

#coding:gbk__author__ = 'Administrator' import sys i=0while i<3: name=raw_input("请输入用户名:") lock_file=open('account_lock.txt','r') i+=1 else: sys.exit('用户 %s 不存在,退出' % name) #while中的语句和普通的没区别,else中的语句会在循环正常执行完后执行.

python之作业编写登陆接口(第一天)

作业:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 针对此实例写了有二种类型的脚本,略有不同,具体如下: 帐号文件account.txt内容如下: sam 123 david 12 kevin 123lin 12 tailen 123 jack 12 锁文件account_lock.txt默认为空 一.只针对帐号文件里的用户进行判断并锁定,针对用户和密码各有三次错误重试机会. 1.流程图如下: 代码如下: #!/usr/bin/python27 #_*_ coding:u

python第一天作业: 编写登陆接口

# -*- coding:utf-8 -*- #Author David """ 功能简介:编写登陆接口 输入用户名和密码 认证成功后显示欢迎信息 输错三次后锁定 """ #用户信息表 user = "david" passwd = "123456" unlock = 1 error_count = 0 """ 定义函数主体 功能说明: 1)当用户输入用户名时首先判断是否存在,

python学习基础篇--编写登陆接口

#!/usr/bin/env python#_*_conding:utf-8_*_#-----------------------------------------------------#编写登陆接口,要求:#输入用户名密码#认证成功后显示欢迎信息#密码输错三次后锁定帐户#----------------------------------------------------- user='admin' # 定义登录帐号密码passwd='123' # 定义登录帐号密码count=0 #定义

使用 Python 编写登陆接口

# Create Date: 2017.10.31 Tuesday# Author: Eric Zhao# -*- coding:utf-8 -*-'''编写登陆接口输入用户名密码认证成功后显示欢迎信息输错三次后锁定 '''login_user = input('Please input user name..')# obj_u = '\''+login_user+'\''# print(obj_u)password = input('Please input password..')users

编写登陆接口

编写登陆接口: 输入用户名密码    认证成功后显示欢迎信息    输错三次后锁定 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 4 5 name = "mike" 6 pswd = "1" 7 import getpass 8 count = 0 9 while count < 3: 10 user_input = input("请输入姓名:") 11 pswd_input = ge

Python之编写登录接口

作业:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 帐号文件account.txt内容如下: liuyueming 123zhangsan 123lisi 123 锁文件account_lock.txt默认为空 一,针对用户名和密码有三次机会,假如三次均输入错误,锁定 流程图 代码如下 #!/usr/bin/python #_*_ coding:utf-8 _*_ import os,getpass,sys i = 0 while i < 3: name = raw_in

day1作业:编写登陆接口

作业一:编写登陆接口 1.输入用户名和密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 思路:要求是编写登陆接口,那么要有一个存放用户信息的模块:三次后锁定,要有一个存放锁定用户信息的模块:我们知道,保存用户信息有两种方式,一种是数据库保存,一种是文件保存,现在我们只学习了文件保存,因此要有两个文件,一个是用户信息文件,一个是锁定用户信息文件. 要从文件中读取信息,添加信息,修改信息. readme: (1)用户输入用户名: (2)用户名去锁定文件中验证是否锁定:如果锁定让用户联系管理员解决

day1作业一:编写登陆接口

作业一:编写登陆接口 1.输入用户名和密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 Readme: (1)提示用户输入用户名: (2)用户名验证,验证是否已经锁定: (3)是否锁定:已锁定告诉用户,输入的用户名已经锁定,找管理员联系:未锁定就验证是否注册: (4)是否注册:未注册就提示用户,这个用户名还没有注册,需要注册:注册就让用户输入密码: (5)输入密码:输入正确就欢迎用户,输入不正常就三次机会,提示用户输入,三次之后将锁定 (6)锁定用户从登录用户文件中移除并添加到锁定用户文件.