Python编写登陆接口的方法

yipeiwu_com6年前Python基础

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

1.输入用户名密码;

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

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

账号文件:user.txt

锁定文件:locked.txt

流程图如下:

# -*- 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基于matplotlib绘制栈式直方图的方法示例

Python基于matplotlib绘制栈式直方图的方法示例

本文实例讲述了Python基于matplotlib绘制栈式直方图的方法。分享给大家供大家参考,具体如下: 平时我们只对一组数据做直方图统计,这样我们只要直接画直方图就可以了。 但有时候我...

python里dict变成list实例方法

python里dict(字典)怎么变成list(列表)? 说明:列表不可以转换为字典 1、转换后的列表为无序列表 a = {'a' : 1, 'b': 2, 'c' : 3}...

利用Python查看微信共同好友功能的实现代码

利用Python查看微信共同好友功能的实现代码

总有思路清奇的朋友存在,想实现查看微信共同好友:   由于之前分享的代码有获取过微信好友头像,所以当时第一反应是通过itchat微信接口获取好友信息,比对两个人的好友信息列表就...

Python中用pycurl监控http响应时间脚本分享

最近需要对节点到源站自己做个监控,简单的ping可以检测到一些东西,但是http请求的检查也要进行,于是就研究了下pycurl。 pycurl是个用c语言实现的python 库,虽然据说...

python使用urllib2提交http post请求的方法

本文实例讲述了python使用urllib2提交http post请求的方法。分享给大家供大家参考。具体实现方法如下: #!/usr/bin/python #coding=utf-...