python编写登录接口(第一天)

作业:编写登录接口

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

针对此实例书写内容具体如下:

账户文件account.txt内容如下:



Tamir  123

test1  123

test2  123

test3  123



账户锁定文件account_lock.txt默认为空

针对账号文件(account.txt)里的用户进行判断并锁定,针对用户和密码各有三次错误重试机会。

1.流程图如下:

代码如下:

 1 # -*- coding:utf-8 -*-
 2 # Author:Steven Kang
 3
 4 import os,sys,getpass  #导入os,sys,getpass 模块
 5 u = 0                   #用户的循环次数
 6 while u < 3:
 7     username = input("请输入您的用户名:")           #使用input 让用户输入并赋值给username变量
 8     lock_file = open(‘account_lock.txt‘,‘r+‘)             #打开account_lock文件,权限是读取更新,并赋值给lock_f变量
 9     lock_list = lock_file.readlines()                    #使用.readlines的方法逐行读取account_lock文件,并赋值给lock_list变量
10
11     for lock_line in lock_list:                      #使用for循环读取account_lock的内容
12         lock_line = lock_line.strip(‘\n‘)            #使用.strip()的方法去点换行符
13         if username == lock_line:
14             print(‘用户 %s 已经锁定,请联系您的系统管理员‘ % username)  #如果存在打印输出
15             sys.exit(1)                                    #跳出循环
16     user_file = open(‘account.txt‘,‘r‘)                    #打开account文件,权限是读取更新,并赋值给user_f变量
17     user_list = user_file.readlines()                    #使用.readlines的方法逐行读取account文件,并赋值给user_list变量
18     for user_line in user_list:                      #使用for循环读取account的内容
19         (user,passwd) = user_line.strip(‘\n‘).split()   #分别获取账号和密码信息
20         if username == user:                         #使用if判断用户输入的用户是否在normal_user中存在
21             p = 0                                    #输入密码的循环次数
22             while p < 3:                            #只要用户登录异常不超过3次就不断循环
23                 password = getpass.getpass(‘请输入您的密码:‘)       #使用getpass模块的.getpass方法让用户输入密码(输入的时候不会显示)
24                 if password == passwd:              #使用if判断用户输入的密码在normal_user中是否存在(相等)
25                     print(‘欢迎 %s 登录系统‘ %username)              #用户名密码全部相等(存在)打印欢迎登录信息
26                     sys.exit(0)                         #跳出循环
27                 else:
28                     if p != 2:
29                         print(‘对不起,%s 的密码错误,请重新输入,您还有 %d 次机会‘%(username,2 - p))
30                 p += 1                              #密码输入错误后,循环值增加1
31             else:
32                 lock_file.write(username + ‘\n‘)      #用户名密码输入次数超过3次的用户添加到account_lock文件中
33                 #lock_f.write(‘%s \n‘ %username)
34                 sys.exit(‘对不起 %s 用户已经锁定,请联系管理员‘% username)
35         else:
36             pass                                   #当用户没匹配时,跳过并继续循环
37     else:
38         if u != 2:                                 #i=2时,是最后一次机会,不用在提示还剩余0次机会了
39             print(‘对不起,%s 输入错误,请重新输入,您还有 %d 次机会‘ %(username, 2 - u))
40     u += 1                                         #当用户输入错误时,循环值增加1
41 else:
42     sys.exit(‘因为您的错误输入,程序已经退出,请重新运行‘)   #用户输入三次错误后,异常退出
43 lock_f.close()          #关闭lock_f文件
时间: 2024-10-10 05:14:08

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

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.下次登录还是上次的账户,提示锁定,直接退出

编写登录接口-第一个作业

编写登录接口让用户输入用户名密码认证成功后显示欢迎信息输错三次后退出程序 1 count=1 2 while count < 4: 3 name = input('name:') 4 password = input('password:') 5 if name=='egon' and password=='123': 6 print('欢迎登录') 7 break 8 else: 9 print('不好意思,您已经输错%s次' %count) 10 if count == 3: 11 brea

Python 编写登录接口

思路一: # coding:utf-8 """ 登录接口: -输入用户名和密码 -认证成功后显示欢迎信息 -输错三次后锁定 """ import sys,os i = 0 while i < 3: name = raw_input('请输入用户名:') with open('D:/account_lock.txt','r+') as f: lock_list = f.readlines() for lock_user in lock_lis

用Python编写登录接口

登陆接口要求: 输入用户名和密码 认证成功后显示欢迎信息 输错三次后锁定 代码: 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # Author:James Tao 4 5 import pickle 6 import os 7 8 #注册 9 register={'tz':'1234','t':'123','tza':'12345abc'} 10 locked_account=[] 11 12 #也可由用户输入注册账号 13 #regis

【阶段性成果1】Python编写登录接口(要求:认证成功后显示欢迎信息;输错三次后该用户锁定)

注:信息需要以如下形式储存: 用户名 密码 用户名2 密码2 相关知识点: #w 只能操作写入 r 只能读取 a 向文件追加 #w+ 可读可写 r+可读可写 a+可读可追加 #wb+写入进制数据 #w模式打开文件,如果而文件中有数据,再次写入内容,会把原来的覆盖掉 #read(int)函数, 读取文件内容.如果指定读取长度,会按照长度去读取,不指定默认读取所有数据 #readline(int)函数 默认读取文件一行数据 #readlines() 会把每一行的数据作为一个元素放在列表中返回,读取所

python编写api接口

 目标: 使用Python实现一个简单的接口服务,可以通过get.post方法请求该接口,拿到响应数据.创建一个api_server.py文件, 想要实现的效果是这样的: 添加代码如下:  1 import flask,json 2 from flask import request 3 4 ''' 5 flask: seb框架,通过flask提供的装饰器@server.route()将普通函数转换为服务 6 登录接口,需要传入url,username,passwd 7 ''' 8 9 #创建一

编写登录接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定

练习题目: 编写登录接口输入用户名密码认证成功后显示欢迎信息输错三次后锁定 代码: name_actual = "phka"password_actual = "123"name = input("please enter your name")if name == name_actual: count = 0 while count < 3: password = input("please enter your passwor

python练习之编写登录接口

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