Python学习---------登陆系统代码实现
题目要求:
一、编写登陆入口
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学习---------登陆系统代码实现的更多相关文章
- python学习 登陆验证
#!/usr/bin/env python #-*- coding=utf-8 -*- #----------------导入模块------------------------------ impo ...
- python学习 —— 获取系统运行情况信息并在Linux下设置定时运行python脚本
代码: # -*- coding:utf-8 -*- from psutil import * def cpu_usage_rate(): for i, j in zip(range(1, cpu_c ...
- Python学习—(windows系统下)安装pygame
浏览器搜索pygame的windows安装程序,下载与python版本相匹配的文件. 如果.exe文件直接运行: 如果.whl文件,将其复制到要用到的项目文件夹中,在cmd窗口中切换到该文件所在的文件 ...
- Python学习1,代码
看了好久的网上视频,今天尝试着写了一串代码: _author_ = "Happyboy" produce_list = [ ('Iphone',5800), ('Mac Pro ...
- [python学习篇][系统学习][1]python标准库中文、英文网址(一些内建函数,标准库都可以在这里查找)
http://docspy3zh.readthedocs.io/en/latest/library/ 半中文网址 http://usyiyi.cn/translate/python_278/lib ...
- python学习_Linux系统的常用命令(二)
linux基本命令: 1.ls 的详细操作: ls - l : 以列表方式显示文件的详细信息 ls -l -h: 以人性化的方式显示文件的大小 ls -l -h -a 显示所有的目录和文件,包括隐藏文 ...
- python学习---50行代码实现图片转字符画2
from PIL import Image codeLib = '''@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<> ...
- python学习---50行代码实现图片转字符画1
转自:https://blog.csdn.net/mm1030533738/article/details/78447714 项目链接: https://www.shiyanlou.com/cours ...
- python开发基础作业01:模拟登陆系统
随老男孩学习python mark 作业要求及提示:编写登录接口 ''' 练习程序:编写登录接口 1. 输入用户名和密码 2. 认证成功后显示欢迎信息 3. 输错三次后锁定 输入三次后退出,下次同样用 ...
随机推荐
- jpbm工作流框架
一:JBPM是什么?有什么用?能解决什么问题? 现实生活中有很多需要走一些流程的过程,比如请假流程,报销流程等,使用工作流框架,即可写一个流程即可,添加流程时不在繁琐的建立新的各种配置. 1:jBPM ...
- Git配置用户名与邮箱
1.用户名和邮箱地址的作用 用户名和邮箱地址是本地git客户端的一个变量 每次commit都会用用户名和邮箱纪录. github的contributions统计就是按邮箱来统计的. 2.查看用户名和邮 ...
- 汇编 REPNE/REPNZ指令,SCASW指令,SCASD指令,SCAS指令
知识点: REPNE/REPNZ 指令 SCASW 指令 SCASD 指令 SCAS 指令 一.SCASW 指令 //SCASB cmp word ptr [edi],al //对标志位的影响 ...
- 汇编 inc 和 dec 指令
知识点: inc 加1指令 dec 减1指令 一.加一指令inc inc a 相当于 add a, //i++ 优点 速度比sub指令快,占用空间小 这条指令执行结果影响AF.OF.PF.SF.Z ...
- 如何写论文的introduction
重要的是写Introduction.写Introduction就和写童话一样.(转自知乎珵cici) 1. 有一条巨龙抓走了公主 (介绍你的问题为什么值得研究) 2. 巨龙是多么多么多么难打(强调你的 ...
- [CF917D]Stranger Trees[矩阵树定理+解线性方程组]
题意 给你 \(n\) 个点的无向完全图,指定一棵树 \(S\),问有多少棵生成树和这棵树的公共边数量为 \(k\in[0,n-1]\) \(n\leq 100\) 分析 考虑矩阵树定理,把对应的树边 ...
- C# ConcurrentBag的实现原理
目录 一.前言 二.ConcurrentBag类 三. ConcurrentBag线程安全实现原理 1. ConcurrentBag的私有字段 2. 用于数据存储的TrehadLocalList类 3 ...
- Spring的单例模式底层实现学习笔记
单例模式也属于创建型模式,所谓单例,顾名思义,所指的就是单个实例,也就是说要保证一个类仅有一个实例.单例模式有以下的特点:①单例类只能有一个实例②单例类必须自己创建自己的唯一实例③单例类必须给所有其他 ...
- HTML快速入门(一)
一.HTML 是什么? HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记语言 (markup language) 标记 ...
- aiohttp简介及快速使用
前言 本文翻译自aiohttp官方文档,如有纰漏,欢迎指出. aiohttp是一个为Python提供异步HTTP 客户端/服务端编程,基于asyncio(Python用于支持异步编程的标准库)的异步库 ...