Python基础练习之用户登录实现代码分享

python版本为python3.5

1.要求

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

2.需求分析

1)用户信息存储在文件中(login/config/user_login.txt)
2)用户输入用户名和密码
3)判断用户名是否存在,存在则继续,不存在则提示继续输入
4)判断输入的用户名是否已经被锁定,如果已锁定则退出程序,否则继续
5)匹配文件中的用户信息
6)如果匹配则打印出欢迎信息
7)如果输入3次密码错误,则锁定该用户名(login/config/name_lock.txt)

3.测试用户

bigberg:123abc
lc:123456
smallberg:111111
root:12345
dinasor:12321

# -*- coding: UTF-8 -*-
#Author:Bigberg
#定义一个循环计数
count = 0
#定义一个字典存储用户名和密码
names={}
#定义一个列表存储用户名
name_exit = []
#输入用户名
username = input("username:")
#判断输入的用户的用户是否在用户名单中
with open("../config/name_login.txt",'r') as f:
  while True:
    line = f.readline().strip()
    if not line:
      break
    else:
      name = line.split(':')[0]
      passwd = line.split(':')[1]
      names[name] = passwd
for key in names:
  name_exit.append(key)
#判断用户名是否正确,不正确则继续输入
while username not in name_exit:
  print("The account is not exit.Check it again.")
  username = input("username:")
else:
  # 读取锁定文件中的内容
  with open("../config/name_lock.txt", "r") as f:
    lock_name = f.read()
  # 判断用户名是否在锁定文件中,如果在就退出程序
  if username == lock_name:
    print("Sorry.Your account has been locked.")
    exit()
  else:
    # 3次输入密码的机会
    while count < 3:
      passwd_input = input("password:")
      # 判断用户名和密码是否有效
      if passwd_input == names[username]:
        print("Welcome!", username)
        break
      else:
        print("Error,please try again.")
      count += 1
      # 如果3次输入密码错误,则将用户名添加到锁定文件
      if count == 3:
        with open("../config/name_lock.txt", "w") as f:
          f.write("%s" % username)
        print("You have tried 3 times,and your account will be locked")

总结

以上就是本文关于Python基础练习之用户登录实现代码分享的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:Python入门之三角函数全解【收藏】、python好玩的项目—色情图片识别代码分享、Python实现一个简单的验证码程序等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!

(0)

相关推荐

  • python生成随机图形验证码详解

    使用python生成随机图片验证码,需要使用pillow模块 1.安装pillow模块 pip install pillow 2.pillow模块的基本使用 1.创建图片 from PIL import Image #定义使用Image类实例化一个长为400px,宽为400px,基于RGB的(255,255,255)颜色的图片 img1=Image.new(mode="RGB",size=(400,400),color=(255,255,255)) #把生成的图片保存为"pi

  • python实现人脸识别代码

    从实时视频流中识别出人脸区域,从原理上看,其依然属于机器学习的领域之一,本质上与谷歌利用深度学习识别出猫没有什么区别.程序通过大量的人脸图片数据进行训练,利用数学算法建立建立可靠的人脸特征模型,如此即可识别出人脸.幸运的是,这些工作OpenCV已经帮我们做了,我们只需调用对应的API函数即可,先给出代码: #-*- coding: utf-8 -*- import cv2 import sys from PIL import Image def CatchUsbVideo(window_name

  • 浅谈python中的占位符

    占位符,顾名思义就是插在输出里站位的符号.我们可以把它理解成我们预定饭店.当我们告诉饭店的时候,饭店的系统里会有我们的预定位置.虽然我们现在没有去但是后来的顾客就排在我们后面. 常见的占位符有三种: 1.%d 整数占位符 >>>'我考了%d分' % 20 '我考了20分' >>>'我考了%d分' % 20.5 ;我考了20分' >>>"我考了%d分,进步了%d分" % (50,10) "我考了50分,进步了10分"

  • Python入门之三角函数全解【收藏】

    Python中的三角函数位于math模块内. 引入模块: import math 输出pi: import math print(math.pi) 得:3.141592653589793 math模块内还有sin.cos.tan之类的函数,与C#的用法一致. 下面介绍Python中的三角函数,如下: 函数 描述 acos(x) 返回x的反余弦弧度值. asin(x) 返回x的反正弦弧度值. atan(x) 返回x的反正切弧度值. atan2(y, x) 返回给定的 X 及 Y 坐标值的反正切值.

  • Python爬虫实例爬取网站搞笑段子

    众所周知,python是写爬虫的利器,今天作者用python写一个小爬虫爬下一个段子网站的众多段子. 目标段子网站为"http://ishuo.cn/",我们先分析其下段子的所在子页的url特点,可以轻易发现发现为"http://ishuo.cn/subject/"+数字, 经过测试发现,该网站的反扒机制薄弱,可以轻易地爬遍其所有站点. 现在利用python的re及urllib库将其所有段子扒下 import sys import re import urllib

  • Python基础练习之用户登录实现代码分享

    python版本为python3.5 1.要求 1)输入用户名密码 2)认证成功后显示欢迎信息 3)输错三次后锁定 2.需求分析 1)用户信息存储在文件中(login/config/user_login.txt) 2)用户输入用户名和密码 3)判断用户名是否存在,存在则继续,不存在则提示继续输入 4)判断输入的用户名是否已经被锁定,如果已锁定则退出程序,否则继续 5)匹配文件中的用户信息 6)如果匹配则打印出欢迎信息 7)如果输入3次密码错误,则锁定该用户名(login/config/name_

  • 用Python写一段用户登录的程序代码

    如下所示: #!/usr/bin/env python #coding: utf8 import getpass db = {} def newUser(): username = raw_input('username: ') if username in db: #添加打印颜色 print "\033[32;1m%s already exists![0m" % username else: #屏幕不显示密码,调用getpass.getpass() password = getpas

  • java编程基础之模仿用户登录代码分享

    上一篇文章我们了解了Java背包问题求解实例代码,接下来我们看看Java中模仿用户登录的相关代码,下面是具体内容. 基于用户从控制台输入模拟的简陋用户登录验证Demo原理: 利用 Scanner 类中 nextLine() 提取用户从控制台输入的字符串信息 利用 String 类的 equals 方法进行用户输入验证 import java.util.Scanner; public class Login { public static void main(String[] args) { //

  • python 3.0 模拟用户登录功能并实现三次错误锁定

    Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年. 像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议. Python的3.0版本,常被称为Python 3000,或简称Py3k.相对于Python的早期版本,这是一个较大的升级.为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下兼容. 下面给大

  • Python中tkinter的用户登录管理的实现

    内容 编写一个用户登录管理程序,设计窗体的布局,制定密码规则和验证码规则.要求使用 Python 标准库 tkinter 编写基于GUI 的用户登录窗体.通过该窗体,用户输入用户名.密码和验证码等信息,确认登录后需要判断用户信息是否合法,并弹出对应的反馈信息.通过判断用户是否在用户信息中,以及输入密码是否与用户信息文件中用户名所对应的密码是否相同,来判断用户是否合法.此外,新用户还可以进行注册,注册需要输入用户名.密码.手机号和身份证号等信息.注册时密码需要遵循一定规则(长度不小于8且含有数字.

  • Java用户登录验证代码

    废话不多说了,关键代码如下所示: import java.util.*; public class Demo04 { public static void main(String[] args){ //声明变量 String root="jim";//用户名 int passwd=123456;//密码 int time=0;//循环次数 int sum=0;//总计次数 Scanner input=new Scanner(System.in);//获取键盘输入 //for循环内 fo

  • Java Web用户登录实例代码

    实现功能: 1.用户登陆.注销 2.利用session记录用户登陆信息 3.在JSP中展示已登陆用户信息 实现原理: 登陆后通过判断用户名和密码是否和存储的一致,如果一致,就把用户信息放到session中储存:如果不一致就提示信息,并且返回登陆页面. 显示信息页面上固定从session中找用户登陆信息,找到就显示用户信息,没找到就显示登陆框. 注销很简单,就是清空session信息. 主要文件: 1.LoginAction:struts2的Action类,用于处理JAVA端的主要登陆和登出逻辑.

  • Python列表删除的三种方法代码分享

    1.使用del语句删除元素 >>> i1 = ["a",'b','c','d'] >>> del i1[0] >>> print(i1) ['b', 'c', 'd'] >>> del语句将值从列表中删除后,就再也无法访问它了. 2.使用pop()删除元素 pop()可删除列表末尾的元素,并让你能够接着使用它.食欲弹出(pop)源自这样的类比:列表就是一个栈,而删除列表末尾的元素相当于弹出栈顶元素. >>

  • Python中顺序表的实现简单代码分享

    顺序表python版的实现(部分功能未实现) 结果展示: 代码示例: #!/usr/bin/env python # -*- coding:utf-8 -*- class SeqList(object): def __init__(self, max=8): self.max = max #创建默认为8 self.num = 0 self.date = [None] * self.max #list()会默认创建八个元素大小的列表,num=0,并有链接关系 #用list实现list有些荒谬,全当

  • python实现发送带附件的邮件代码分享

    具体代码如下: from django.template import loader from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.header import Header import smtplib import traceback class SendEmail(object):     """     发送html邮件    

随机推荐