Python编写登陆接口的方法


Posted in Python onJuly 10, 2017

本文实例为大家分享了Python编写登陆接口的具体代码,供大家参考,具体内容如下

1.输入用户名密码;

2.认证成功后显示欢迎信息;

3.错误三次后,账号被锁定。 

账号文件:user.txt

锁定文件:locked.txt

流程图如下:

Python编写登陆接口的方法

# -*- coding:utf-8 -*-
# Author Caoxl
import sys

account_file='E:\user.txt'
locked_file='E:\locked.txt'

def deny_account(username):
 print('您的用户已被锁定')
 with file(locked_file,'a') as deny_f:
  deny_f.write('\n'+username)

def main():
 retry_count=0
 retry_limit=3         #循环次数
 while retry_count<retry_limit:     #用户最多重复登陆3次
  username=raw_input('请输入您的用户名:') #引导用户输入用户名
  with file(locked_file,'r') as lock_f:
   #采用with打开方式,将locked_file赋值lock_f,防止忘记f.close()关闭文件
   for line in lock_f.readlines():  #循环遍历每一行的内容
    if len(line)==0:     #对每一行内容进行处理
     continue
    if username == line.strip():
     #利用.strip这个函数去掉换行符,来对username进行匹配。
     sys.exit('用户已经被锁定!')
  if len(username)==0:  #提示用户登录时,用户名不能为空!
   print('用户名不能为空,请重新输入')
   continue

  password= raw_input('请输入您的密码:') #引导用户输入密码
  with file(account_file,'r') as account_f:
   flag= False

   for line in account_f.readlines():
    user,pawd=line.strip().split()  #将用户名和对应密码进行处理
    if username==user and password==pawd: #判断用户名和密码
     print('success!')
     flag=True
     break      #退出for循环
  if flag==False:      #避免用户在三次输入后,依然提示重新输入。
   if retry_count<2:
    print('您输入的用户名或密码有误,请重新输入!')

   retry_count+=1

  else:
   print('欢迎用户登陆成功!!')
   break
   # 加标志位是为了用户能够成功推出整个循环!
   deny_account(username)
   #对应上面的def函数把锁定账号加入文档中去

if __name__ == '__main__':
 main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python继承和抽象类的实现方法
Jan 14 Python
python 简单的多线程链接实现代码
Aug 28 Python
运动检测ViBe算法python实现代码
Jan 09 Python
Tensorflow实现卷积神经网络用于人脸关键点识别
Mar 05 Python
python实现维吉尼亚算法
Mar 20 Python
Python3.6实现根据电影名称(支持电视剧名称),获取下载链接的方法
Aug 26 Python
Django2 连接MySQL及model测试实例分析
Dec 10 Python
Python3 把一个列表按指定数目分成多个列表的方式
Dec 25 Python
Python对Tornado请求与响应的数据处理
Feb 12 Python
python对数组进行排序,并输出排序后对应的索引值方式
Feb 28 Python
完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误
Apr 01 Python
python在linux环境下安装skimage的示例代码
Oct 14 Python
CentOS中升级Python版本的方法详解
Jul 10 #Python
pygame 精灵的行走及二段跳的实现方法(必看篇)
Jul 10 #Python
Python 实现数据库更新脚本的生成方法
Jul 09 #Python
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 #Python
解决python文件字符串转列表时遇到空行的问题
Jul 09 #Python
python3 shelve模块的详解
Jul 08 #Python
Python基于scapy实现修改IP发送请求的方法示例
Jul 08 #Python
You might like
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
PHP写的获取各搜索蜘蛛爬行记录代码
2012/08/21 PHP
Laravel实现autoload方法详解
2017/05/07 PHP
js 分栏效果实现代码
2009/08/29 Javascript
JS获取鼠标坐标的实例方法
2013/07/18 Javascript
html页面显示年月日时分秒和星期几的两种方式
2013/08/20 Javascript
JavaScript设计模式之原型模式(Object.create与prototype)介绍
2014/12/28 Javascript
javascript中的作用域和闭包详解
2016/01/13 Javascript
JS锚点的设置与使用方法
2016/09/05 Javascript
Javascript 实现计算器时间功能详解及实例(二)
2017/01/08 Javascript
详解VueJs异步动态加载块
2017/03/09 Javascript
Angular4如何自定义首屏的加载动画详解
2017/07/26 Javascript
详解 vue.js用法和特性
2017/10/15 Javascript
详解jQuery获取特殊属性的值以及设置内容
2018/11/14 jQuery
从理论角度讨论JavaScript闭包
2019/04/03 Javascript
详解滑动穿透(锁body)终极探索
2019/04/16 Javascript
Vue 组件复用多次自定义参数操作
2020/07/27 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
[01:04:08]完美世界DOTA2联赛PWL S3 INK ICE vs GXR 第一场 12.16
2020/12/18 DOTA
python实现linux下使用xcopy的方法
2015/06/28 Python
Python中%r和%s的详解及区别
2017/03/16 Python
Python openpyxl 遍历所有sheet 查找特定字符串的方法
2018/12/10 Python
Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
2019/04/27 Python
在python plt图表中文字大小调节的方法
2019/07/08 Python
在Pytorch中计算自己模型的FLOPs方式
2019/12/30 Python
利用python实现凯撒密码加解密功能
2020/03/31 Python
Expected conditions模块使用方法汇总代码解析
2020/08/13 Python
CSS3 中filter(滤镜)属性使用详解
2020/04/07 HTML / CSS
斯凯奇美国官网:SKECHERS美国
2016/08/20 全球购物
法国大使拉杆箱官网:DELSEY Paris
2018/03/20 全球购物
韩国11街:11STREET
2018/03/27 全球购物
印度化妆品购物网站:Nykaa
2018/07/22 全球购物
环境科学专业研究生求职信
2013/10/02 职场文书
创先争优公开承诺书
2014/08/30 职场文书
python实现求纯色彩图像的边框
2021/04/08 Python
分享node.js实现简单登录注册的具体代码
2022/04/26 NodeJs