# 初学者的起步,对于开始的流程图结构还不太熟悉

#   思考: 1,write()与writelines()的区别,前者确定为字符串,后者为序列(列表,字典、元组等),自动为你迭代输入
#               2. 文件结构的构建,选择什么样的序列存储数据,如何使用有待加强

       3.文件的读写操作,读写格式的设置 r ,a,w三种类别,分为只读,只追加、只覆盖写;然后延伸至rb,wb,ab读写二进制文件应用于视频与图片的读写;其次r+为可读写两种操作 w+为可读写两种操作(f覆盖) a+为追加读写两种操作,最后rb+,wb+,ab+

 
 # import getpass

 def read_lock():
f = open('lockfile', encoding='utf-8')
user_lock_info = f.read().split()
f.close()
return user_lock_info def save_lock(lockname):
s = open("lockfile", 'a', encoding='utf-8')
s.writelines(lockname)
s.close() def read_log():
user_log = {}
f = open('log', encoding='utf-8')
user_log_info = f.readlines()
f.close()
for i in user_log_info:
user = i.split(" ", 2)
user_log[user[0]] = user[1]
# print(user_log)
return user_log count = 0
while count < 3:
username = input('username:')
# password = getpass.getpass("password:")
lock = read_lock()
user_log = read_log()
if username not in user_log:
print("---该用户不存在---")
continue
if username in lock:
print("---Your account is Locked---")
continue
password = input("password:")
if user_log[username] == password:
print("---welcome to log in---")
break
else:
count += 1
print("----Your account or password is wrong,please input again!!-----")
else:
save_lock(username)
print(">>>>>The times of your wrong input is more than %s times<<<<<<\n "
">>>>>so your account is locked<<<<<<" % count)


Python密码登录程序的思考--学与习的更多相关文章

  1. python 实现登录程序

    本文介绍一个用python 实现的登录程序.python新手们可以参考一下. 用户信息存放于一个文件中,需要引入文件,校验输入的用户名.密码是否跟用户列表中的用户名密码相匹配,如果匹配,这登录成功,否 ...

  2. 第三篇python用户登录程序实现

    需求: 1.通过注册输入用户名和密码 2.能够验证用户名和密码是否正确 3.限制输入一定错误次数后退出程序 4.利用格式化输出方式输出信息 分析: 使用username=input()和passwor ...

  3. program 1 : python codes for login program(登录程序python代码)

    #improt time module for count down puase time import time #set var for loop counting counter=1 #logi ...

  4. Python用户名密码登录系统(MD5加密并存入文件,三次输入错误将被锁定)及对字符串进行凯撒密码加解密操作

    # -*- coding: gb2312 -*- #用户名密码登录系统(MD5加密并存入文件)及对字符串进行凯撒密码加解密操作 #作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.co ...

  5. python实现登录密码重置简易操作

    需求: 1.用户输入密码正确登录 2.用户输入密码错误退出并调用函数继续输入 3.用户输入密码符合原先给定的一个值时,允许用户重置密码,并且可以用新密码登录 4.输入三次后禁止输入 虽然贴别的简单,但 ...

  6. python之登录小程序

    # 登录操作 PassWord_list = [] Reset_pw = '*#*#' def account_login(): if PassWord_list == []: PassWord = ...

  7. 2018/04/18 每日一学Linux 之 ssh关闭密码登录

    在平常工作中,常常需要关闭 SSH 的密码登录,只留 SSH 证书登录. 好处显而易见,避免了经常输入密码导致的密码泄露,和设置密码导致被暴力破解的可能性. -- 方法也很简单,首先 你是可以 登录 ...

  8. python实现免密码登录lunx服务器

    import paramikoimport oshostname='192.168.76.10'username='root'# password='123456'ssh=paramiko.SSHCl ...

  9. 【Python数据分析】Python模拟登录(一) requests.Session应用

    最近由于某些原因,需要用到Python模拟登录网站,但是以前对这块并不了解,而且目标网站的登录方法较为复杂, 所以一下卡在这里了,于是我决定从简单的模拟开始,逐渐深入地研究下这块. 注:本文仅为交流学 ...

随机推荐

  1. qt5---步长调节器SpinBox和QDoubleSpinBox

    #include <QSpinBox>            #include <QDoubleSpinBox> QSpinBox 用于整数的显示和输入,一般显示十进制数,也可 ...

  2. [转] Siamese network 孪生神经网络--一个简单神奇的结构

    转自: 作者:fighting41love 链接:https://www.jianshu.com/p/92d7f6eaacf5 1.名字的由来 Siamese和Chinese有点像.Siam是古时候泰 ...

  3. jquery attribute$=value选择器 语法

    jquery attribute$=value选择器 语法 作用:[attribute$=value] 选择器选取每个带有指定属性且以指定字符串结尾的元素. 语法:$("[attribute ...

  4. codevs 1405 牛的旅行x

    牛的旅行 [问题描述] 农民John的农场里有很多牧区.有的路径连接一些特定的牧区.一片所有连通的牧区称为一个牧场.但是就目前而言,你能看到至少有两个牧场不连通.现在,John想在农场里添加一条路径 ...

  5. touch:创建文件及修改文件时间戳

    touch 命令不光可以用来创建文件(当指定操作文件不存在时,该命令会在当前位置建立一个空文件),此命令更重要的功能是修改文件的时间参数(但当文件存在时,会修改此文件的时间参数). Linux 系统中 ...

  6. 利用gephi作人物网络图

    一.先利用word2vec训练数据得到模型 a.利用jieba对文本进行分词,并只提取词性为人名的词,去除分词长度为1和大于4的词 b.利用word2vec训练分词后的文本,并存储 c.利用训练后的模 ...

  7. 我不熟悉的map

    讲map之前,其实很多都在set那篇讲过了.我不熟悉的set. 很多的API都类似,不会再累述. map和set都是用红黑树实现的,但是set只能存单个值,它的key和value都是同一个,map不一 ...

  8. 安装破解confluence6.7.1(插图丢了,一直懒得补)

      JIRA安装:https://www.cnblogs.com/wei9593/p/10194784.html 1环境: centos7.2 java-1.8https://www.cnblogs. ...

  9. 过滤器修改response

    过滤器通过doFilter方法的第二个参数ServletResponse将输出发送给客户,但servletResponse参数没有为过滤器提供servlet或jsp页面的访问:执行doFilter方法 ...

  10. 一、基础篇--1.1Java基础-什么是java的序列化和反序列化

     什么是序列化和反序列化 序列化:把堆内存中的java对象数据,通过某种方式把对象存储到磁盘文件或者传递给其他网络节点.这个过程称为序列化.简单来说呢,就是将对象转换成二进流的过程. 反序列化:把磁盘 ...