zoukankan      html  css  js  c++  java
  • 基于文件存储的用户登入

    基于文件存储的用户登入(用户登入时三次输入错误的用户名和密码锁定账户)

     1 #/usr/bin/env python
     2 # -*- coding:utf-8 -*-
     3 # Author:ylw
     4 
     5 f1 = open('userdb','r')       # 打开文件userdb 并读取里面的内同容
     6 data = f1.read()              # 把f1 变量为 data可以读取f1里所有内容
     7 f1.close()                    # 关闭文档
     8 user_str_list = data.split(
    )  #变成字符串类型的
     9 user_info_list = []
    10 for item in user_str_list:     # 把user_str_list赋值给item
    11     temp = (item.split('|'))    # 用管道符分割item里的字符串
    12     v = {                       # 定义字典
    13         'name': temp[0],
    14         'pwd': temp[1],
    15         'times': temp[2]
    16     }
    17     user_info_list.append(v)    #
    18 i = 0                           #定义变量
    19 while i < 3:                    # 循环 i<3
    20     user = input('用户名:')    #
    21     pwd = input('密码:')       #
    22     for n in user_info_list:    # 把user_info_list定义为n
    23         if  user == n['name'] and pwd == n['pwd']:      # 去文件里的相应的字符
    24             print('登入成功!')                         # 如果取值成功,就会显示print里的内容
    25             exit()                                      # 如果取值正确,结束循环
    26         else:                                           # 如果取值不正确,就会执行else下的代码
    27             print('用户名密码错误,请重试')             # 如果却只不正确,就会显示else下print里的内容
    28             i += 1                                      #
    29         if i == int(n['times']):                        # 取文件里定义的times字符来循环上一个命令i += 1
    30             print('您的帐户已被锁定!')                 # 如果匹配定义的times就会显示print里的内容
  • 相关阅读:
    UVA 11235 Frequent Values ---RMQ
    UVA 12266 Stock prices --优先队列
    HDU 1896 Stones --优先队列+搜索
    POJ 1442 Black Box -优先队列
    POJ 2263 Heavy Cargo 多种解法
    POJ 3250 Bad Hair Day --单调栈(单调队列?)
    FZU1894 志愿者选拔 --单调队列
    POJ 2823 Sliding Window 再探单调队列
    UVA 11992 Fast Matrix Operations (二维线段树)
    两道相似KMP题
  • 原文地址:https://www.cnblogs.com/666y/p/6815963.html
Copyright © 2011-2022 走看看