题目要求:

一、编写登陆入口

 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. HDU 2059 龟兔赛跑(超级经典的线性DP,找合适的j,使得每个i的状态都是最好的)

    龟兔赛跑 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status ...

  2. java进阶的书籍

    通过观看职话大数据论坛,了解到华信智原.项目总监就为我们推荐了一些JAVA程序员必看的书籍,使我们在学习过程中可以少走弯路.有些程序员在学习的时候总是急功近利,这里看看 那里学学,最后都不能把该掌握的 ...

  3. Android 下拉刷新上拉加载PullToRefresh

    https://github.com/823546371/PullToRefresh http://www.jianshu.com/p/0f5d0991efdc

  4. C# winform 设置WebBowser 内核版本

    一种是在网页头部 用 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 使用当前浏览器最新 ...

  5. BAT for 循环

    @echo off echo.Current User is '%USERNAME%'echo.This script must run with administrative privileges ...

  6. HTML基础语法

    目录 HTML基础语法 1.全局架构标签 2.标题 3.段落 4.文本 5.属性 6.链接 7.图片 8.列表 9.表格 10.区块 11.布局 12.表单 13.框架 14.头部 HTML基础语法 ...

  7. 华为手机自带浏览器不支持 ES6 语法

    原文地址:https://caochangkui.github.io/huawei-es6/ 华为手机自带浏览器对 es6 语法的支持度极差,哪怕最新的荣耀10 手机也有该毛病!所以,移动端项目开发中 ...

  8. JavaScript组成—— DOM、BOM、ECMAScript

    ECMAScript是JS的核心:提供核心语言功能 DOM(文档对象模型):提供访问和操作网页内容的方法和接口 BOM(浏览器对象模型):提供与浏览器交互的方法和接口 1. DOM(文档对象模型) 1 ...

  9. 全面掌握IO(输入/输出流)

    File类: 程序中操作文件和目录都可以使用File类来完成即不管是文件还是目录都是使用File类来操作的,File能新建,删除,重命名文件和目录,但File不能访问文件内容本身,如果需要访问文件本身 ...

  10. JS基础内容小结(基础)(一)

    字符串的各类方法 str.charAt(1); 从第0个开始计算获取第一个子符串,如str=‘你好吗’获取到‘好’ str.charCodeAt(1); 获取对应字符串的编码数字:从第0个开始计算 S ...