详解Python用户登录接口的方法

yipeiwu_com7年前Python基础

Readme:

blog address:

摘要:编写登录接口

输入用户名、密码

认证成功后显示欢迎信息

输错3次后锁定

关键词:循环;判断;外部数据读写;列表;字典;

展望:可以结合数据库读写。

codes:

# Author: Steven Zeng
'''
作业2:编写登录接口
输入用户名密码
认证成功后显示欢迎信息
输错3次后锁定
'''
print("welcome to here")
f1=open('username.txt')
f2=open('password.txt')
f3=open('error.txt')#建立一个Demo记录输错3次密码的用户,并对其锁定
username_true=f1.readlines()#readlines读取方式返回的是逐行一个元素的列表
password_true=f2.readlines()
un_error=f3.readlines()
f1.close()
f2.close()
f3.close()
UK={}
#建立一个字典形式为用户名对密码
for i in range(len(username_true)):
 UK[str(username_true[i])]=str(password_true[i])#注:字典的键必须是不可变更型数据(常用整数和字符串)
# 而键值可以是数字也可以是字符串
#print(un_error)
#print(un_error.count(777+'\n')
#print(UK)
count=0
while count<3:
 username = input("Please, input your username:")
 password = input("Please, input your keywords")
 if un_error.count(str(username+'\n'))>=3:
  print("Out of trying, You are Locking!")
  break
 elif str(username+'\n') in UK and str(password+'\n')==UK.get(str(username+'\n')):
  print("welcome to you, honorable customer!")
  break
 else:
  print('''Invalid customer, please try again!
  And you have {count_left1} times left!'''.format(count_left1=2-count))
  f3=open('error.txt','a')#建立一个Demo记录输错3次密码的用户,并对其锁定
  f3.write(username+'\n')
  f3.close()
 count += 1

以上所述是小编给大家介绍的Python用户登录接口的方法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

8种用Python实现线性回归的方法对比详解

8种用Python实现线性回归的方法对比详解

前言 说到如何用Python执行线性回归,大部分人会立刻想到用sklearn的linear_model,但事实是,Python至少有8种执行线性回归的方法,sklearn并不是最高效的。...

Python批量生成幻影坦克图片实例代码

Python批量生成幻影坦克图片实例代码

前言 说到幻影坦克,我就想起红色警戒里的…… 幻影坦克(Mirage Tank),《红色警戒2》以及《尤里的复仇》中盟军的一款伪装坦克,盟军王牌坦克之一。是爱因斯坦在德国黑森林中研发的...

python:pandas合并csv文件的方法(图书数据集成)

python:pandas合并csv文件的方法(图书数据集成)

数据集成:将不同表的数据通过主键进行连接起来,方便对数据进行整体的分析。 两张表:ReaderInformation.csv,ReaderRentRecode.csv ReaderInf...

python将文本中的空格替换为换行的方法

python将文本中的空格替换为换行的方法

测试文本 jb51.txt welcome to jb51.net I love you very much python代码 # -*- coding: utf-8 -*- '...

Python线程的两种编程方式

Python中如果要使用线程的话,python的lib中提供了两种方式。一种是函数式,一种是用类来包装的线程对象。举两个简单的例子希望起到抛砖引玉的作用,关于多线程编程的其他知识例如互斥...