Python随笔1《实现简单的登录接口》

使用Python的基础知识实现一个登陆接口是非常容易的

一、分析如何实现

程序实现的步骤:

step1:提示用户输入账户密码

step2:判断账户是否在黑名单,0转step3;1转提示账户锁定,结束程序

step3:初始化输入次数

step4:如果输入次数不超过3次,循环

step5:如果账户密码匹配正确,提示成功,结束程序;否则提示错误,剩余输入次数

step6:输入次数大于三次,锁定用户,结束程序

二、程序清单

import sys                                           #载入sys模块是用于结束程序account_file="admin.txt"                             #存用户密码在硬盘中locked_file="blacklist.txt"                          #存黑名单def deny_account(name):                              #定义函数用于打印    print("您的用户被锁定!")    with open(locked_file,"a") as deny_f:        deny_f.write("\n"+name)def main():                                          #定义主函数    retry_count = 0                                  #初始化计数    retry_limit = 3                                  #次数限制变量    while retry_count< retry_limit:        name = input("请输入用户名:")        if len(name) == 0:            print("清重新输入,用户名不能为空")   #输入为空的处理            continue        with open(locked_file) as lock_f:           #检测是否在黑名单            for line in lock_f.readlines():                if len(line)==0:                    continue                if name == line.strip():                    sys.exit("用户%s已经被锁定!" %name)

password = input("请输入密码:")        with open(account_file,"r") as account_f:   #检测是否匹配            Flag = False            for line in account_f.readlines():                user,pw = line.strip().split()                if name == user and password == pw:                    print("登陆成功")                    Flag = True                    break        if Flag ==False:                            #设置Flag变量的意义是方便计数            if retry_count < 3:                print("您输入的用户或者密码有错误,您还有%d次机会" %(3-retry_count))                retry_count +=1                     #此句放在if里面和外面会导致计数偏差        else:            break    else:        deny_account(name)if __name__=="__main__":                            #当文件自己执行的时候调用主函数    main()
时间: 2024-11-10 14:13:07

Python随笔1《实现简单的登录接口》的相关文章

简单的登录接口

项目名称:简单的登录接口 项目要求: 1.输入用户名和用户密码 2.输入成功后会显示欢迎信息 3.三次输入失败后就会锁定用户 项目说明: 输入的用户名都是user.txt或者lock.txt文件中的用户名,如果输入的用户名不存在于这两个文件中就会提示输入的用户名不正确警告. 项目流程图: 项目代码: 1 #encoding=utf-8 2 __author__ = 'heng' 3 """ 4 -----------------------------------------

python利用django实现简单的登录和注册,并利用session实现了链接数据库

利用session实现与数据库链接,登录模块(在views.py) def login(request): # return HttpResponseRedirect('/') # 判断是否post方式,如果是则进行下面的表单处理 if request.method == 'POST': rs = Users.objects.filter(email=request.POST.get('email'), #django的filter方法是从数据库的取得匹配的结果,返回一个对象列表,如果记录不存在

Python学习_1_实现简单的登录判断

"""作业:让用户输入用户名和密码:校验三次,三次未成功,将最后一个用户进行锁定.""" def login1(): """自己实现登录验证的方法: 根据已学的东西想的方法.缺点是:用户名密码只能存储一个. """ user_info_file = open('user_info.txt', 'r') # 用户名和密码存储文件 user_info_list = user_info_fil

python学习之最简单的用户注册及登录验证小程序

文章都是从我的个人博客上粘贴过来的哦,更多内容请点击 http://www.iwangzheng.com 正如很多同学所知道的,楼主开始学习python了,前进的道路曲曲折折,有荆棘也有陷阱,从最简单的小程序写起,每天练习,将python进行到底. 有一点比较别扭的就是python的换行之后空四个空格,ruby都是两个,并且python在方法和循环语句的第一句都要加冒号 mysql> show create table user; mysql> alter table user add sal

使用python编写一个登录接口

需求: 编写登录接口 输入用户名密码 认证成功后 显示欢迎信息 输入三次后锁定 用户信息文件 黑名单的文件 黑名单里检查,不让登录 用户名密码判定 流程图: 代码: #!/usr/bin/env python tries = 0 lockfile = open('account_lock.txt','r+',encoding='UTF-8') tolockfile = open('account_lock.txt','a',encoding='UTF-8') userfile = open('a

python编写登录接口(上)

中途经过了好几天都没有动手了,得坚持下去啊刚看了Alex老师的视频,其中有个题目如下:编写登录接口-输入用户密码-认证成功后显示欢迎信息-输错三次后锁定 # -*- coding: cp936 -*-#用户名保存在一个文件名为user.txt文件中import os,stringtmp=file('C:\Users\hityxg\Desktop\user.txt')username=file('C:\Users\hityxg\Desktop\username.txt','w')b=tmp.rea

python编写登录接口

python编写登录接口 一.需求 编写登录接口: 1.输入用户名和密码登录 2.输错三次锁定账户 3.下次登录还是上次的账户,提示锁定,直接退出(用到文件读写) 4.成功 后显示登录成功 二.需求流程图 三.代码示例 例1: #!/bin/bash/env python #_*_ coding:utf-8 _*_ #python version:3.6 ''' 编写登录接口:     1.输入用户名和密码登录     2.输错三次锁定账户     3.下次登录还是上次的账户,提示锁定,直接退出

python练习之编写登录接口

一.需求 编写一个登录接口,要求如下: 不管是输错密码或者用户名,都被视为一次尝试 当输入用户名或者密码错误时,输出错误提示 尝试过三次后,被锁定 二.代码 #!/usr/bin/env python #_*_coding:utf-8_*_ try_time = 0 while try_time < 3:     user = raw_input("input the username:")     if user == 'mangguo': #当用户名正确后,再提示输入密码  

python运维平台开发第一步:登录接口程序V2.0

一.功能要求 登录接口小程序(需实现的功能如下) 1.输入用户名和密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 二.逻辑思路分析: 定义一个文件用于存储用户名和密码:passwd.db 定义一个文件用于记录输入3次错误后的用户名,以判断文件里的用户名来决定用户是否为锁定状态 lock_user.db 定一个变量为3,用于输错密码最多次数 count = 3 定一个变量为0,用于输错一次自动增加1 inter=0 定义一个变量login_status作为标志位,默认值为login_stat