题目要求:

一、编写登陆入口

 1.输入用户名密码
2.认证成功后显示欢迎的信息
3.输错三次后锁定

Readme:

1.本次实现了登陆系统,若锁定就输出为锁定用户(锁定信息保存在user_lock.txt中,以每个用户为一行存储);若没有锁定就输入密码,判断密码对错(账户保存在user_info.txt文件中,以账户:密码存储为一行依次存储)若正确输出欢迎进入系统;若错误三次锁定用户。

2.之前没有找到能够循环找出第二、三以及跟多的用户的,

3.txt文件建立好,信息按照上面存储,运行即可

思维导图:

代码如下:

 # -*- Coding:utf-8 -*-
# Author:Eric.Shen
#2018.02.06
# 一、编写登陆入口
# 1.输入用户名密码
# 2.认证成功后显示欢迎的信息
# 3.输错三次后锁定 print("""
***************************************************************
** **
** **
** Welcome into the landing system **
** **
** by:Eric.Shen **
***************************************************************
""") #判断是否为锁定用户
def judge_lock_user():
username = input("请输入你的用户名:")
f = open("user_lock.txt","r+")
for line_list in f.readlines():
if username == line_list:
exit("你的账户已经被锁定!")
f.close()
return username#返回刚才输入的用户名字,供下面使用 def judge_password(username):
num = 0
while num < 3:
password = input("请输入你的密码:")
f_user = open("user_info.txt", "r")
for line in f_user.readlines():
line = line.strip()#去掉最后的换行符
index,item = line.split(":") # 以冒号为分解赋值
if index == username and item == password:
f_user.close()
exit("欢迎%s进入系统" % (username))
if num <3:
num += 1
if num <= 2:#没有机会就不输出下面这句话了
print("密码错误,请重新输入,你还有%s此输入机会" % (3 - num))
elif num == 3:#写入user_lock
f_lock = open("user_lock.txt","a")
f_lock.write("\n"+str("%s"%(username)))
f_lock.close()
exit("你的账户已经被锁定")
else:
print("程序退出") if __name__ == "__main__":
#判断是否为锁定用户
name = judge_lock_user() judge_password(username = name)
#不是,则判断密码是否正确

Python学习---------登陆系统代码实现的更多相关文章

  1. python学习 登陆验证

    #!/usr/bin/env python #-*- coding=utf-8 -*- #----------------导入模块------------------------------ impo ...

  2. python学习 —— 获取系统运行情况信息并在Linux下设置定时运行python脚本

    代码: # -*- coding:utf-8 -*- from psutil import * def cpu_usage_rate(): for i, j in zip(range(1, cpu_c ...

  3. Python学习—(windows系统下)安装pygame

    浏览器搜索pygame的windows安装程序,下载与python版本相匹配的文件. 如果.exe文件直接运行: 如果.whl文件,将其复制到要用到的项目文件夹中,在cmd窗口中切换到该文件所在的文件 ...

  4. Python学习1,代码

      看了好久的网上视频,今天尝试着写了一串代码: _author_ = "Happyboy" produce_list = [ ('Iphone',5800), ('Mac Pro ...

  5. [python学习篇][系统学习][1]python标准库中文、英文网址(一些内建函数,标准库都可以在这里查找)

    http://docspy3zh.readthedocs.io/en/latest/library/   半中文网址 http://usyiyi.cn/translate/python_278/lib ...

  6. python学习_Linux系统的常用命令(二)

    linux基本命令: 1.ls 的详细操作: ls - l : 以列表方式显示文件的详细信息 ls -l -h: 以人性化的方式显示文件的大小 ls -l -h -a 显示所有的目录和文件,包括隐藏文 ...

  7. python学习---50行代码实现图片转字符画2

    from PIL import Image codeLib = '''@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<> ...

  8. python学习---50行代码实现图片转字符画1

    转自:https://blog.csdn.net/mm1030533738/article/details/78447714 项目链接: https://www.shiyanlou.com/cours ...

  9. python开发基础作业01:模拟登陆系统

    随老男孩学习python mark 作业要求及提示:编写登录接口 ''' 练习程序:编写登录接口 1. 输入用户名和密码 2. 认证成功后显示欢迎信息 3. 输错三次后锁定 输入三次后退出,下次同样用 ...

随机推荐

  1. Android 在测试阶段当出现多个测试服务器地址时打包的小技巧

    前提:服务端没有做特殊处理 在开发android网络客户端项目时,不可避免的会用到“测试服务器地址”和“云端服务器地址”等.(有时可能会有多个) 这时在打包给测试那帮哥们时,你就需要一个服务器地址打上 ...

  2. 简单直白的去理解AOP,了解Spring AOP,使用 @AspectJ - 读书笔记

    AOP = Aspect Oriental Programing  面向切面编程 文章里不讲AOP术语,什么连接点.切点.切面什么的,这玩意太绕,记不住也罢.旨在以简单.直白的方式理解AOP,理解Sp ...

  3. Features + Git + Drush,打造你的Drupal开发与维护标准工作流

    还在为如何将本地的开发工作如何部署到生产环境而皱眉头?本文以实战历程教你如何一步步将你的工作成果从开发环境部署到生产环境. 如题所示,需要用到Features, Git, Drush:如果你还不知道他 ...

  4. html样式表格

    <html><body><table border="1">  <tr height="20px">    &l ...

  5. 20155209林虹宇 Exp7 网络欺诈防范

    Exp7 网络欺诈防范 简单应用SET工具建立冒名网站 kali要作为web服务器让靶机访问冒名网站,所以要使用阿帕奇web服务器软件. 要阿帕奇使用80端口.进入配置文件/etc/apache2/p ...

  6. [清华集训2015 Day1]主旋律-[状压dp+容斥]

    Description Solution f[i]表示状态i所代表的点构成的强连通图方案数. g[i]表示状态i所代表的的点形成奇数个强连通图的方案数-偶数个强连通图的方案数. g是用来容斥的. 先用 ...

  7. 显示 隐藏DIV的技巧

    使用bootstrap的12分栅来演示 style="display: none;" 隐藏后释放占用的页面空间 document.getElementById("type ...

  8. 3、Docker容器管理

    一.容器创建 1.创建命令 docker  container [root@localhost harbor]# docker container Usage: docker container CO ...

  9. 【2017年9月10日更新】ABP配套代码生成器(ABP Code Generator)帮助文档,实现快速开发

    ABP代码生成器介绍 ABP Code Generator 针对abp这个框架做了一个代码生成器,功能强大.分为两大功能点,一个是数据层,一个是视图层. 数据服务层:通过它,可以实现表设计.领域层初始 ...

  10. .Net Core 分布式微服务框架介绍 - Jimu

    系列文章 .Net Core 分布式微服务框架介绍 - Jimu .Net Core 分布式微服务框架 - Jimu 添加 Swagger 支持 一.前言 近些年一直浸淫在 .Net 平台做企业应用开 ...