python实现密码验证合格程序的思路详解


Posted in Python onJune 01, 2020

题目描述

输入一行或多行字符串密码,验证每行密码是否符合规范,符合提示“OK”,否则“NG”。密码规范为:
1.长度超过8位
2.包括大小写字母.数字.其它符号,以上四种至少三种
3.不能有相同长度超2的子串重复

解题思路

1.获取输入的多行字符串
2.对每行字符串进行密码验证:
1)如果密码长度小于等于8或者是密码中有长度超过2的重复子串,则密码NG
2)在1)不满足的情况下再看有没有至少包含大写字母、小写字母、数字、其他符号

python代码实现

import sys
import re

def has_Dup(str):
  for i in range(len(str)-3):
    for j in range(i+1, len(str)-3):
      if str[i:i+3] == str[j:j+3]:
        return True

def check_pwd(pwd):
  if len(pwd) <= 8 or has_Dup(pwd):
    return False
  count = 0
  if re.search('[0-9]', pwd):
    count += 1
  if re.search('[a-z]', pwd):
    count += 1
  if re.search('[A-Z]', pwd):
    count += 1
  if re.search('\W', pwd):
    count += 1
  if count >= 3:
    return True
pwdList = sys.stdin.readlines()
for x in pwdList:
  x = x.strip()
  if check_pwd(x):
    print('OK')
  else:
    print('NG')

总结

到此这篇关于python实现密码验证合格程序的思路详解的文章就介绍到这了,更多相关python密码验证合格程序内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python文本相似性计算之编辑距离详解
Nov 28 Python
Python内置模块logging用法实例分析
Feb 12 Python
Python机器学习算法之k均值聚类(k-means)
Feb 23 Python
在VS Code上搭建Python开发环境的方法
Apr 06 Python
Python中logging.NullHandler 的使用教程
Nov 29 Python
spark dataframe 将一列展开,把该列所有值都变成新列的方法
Jan 29 Python
Python中psutil的介绍与用法
May 02 Python
Pandas之Fillna填充缺失数据的方法
Jun 25 Python
在pycharm下设置自己的个性模版方法
Jul 15 Python
TensorFlow学习之分布式的TensorFlow运行环境
Feb 05 Python
Python类继承和多态原理解析
Feb 05 Python
django model object序列化实例
Mar 13 Python
Python网络爬虫四大选择器用法原理总结
Jun 01 #Python
浅谈Pycharm的项目文件名是红色的原因及解决方式
Jun 01 #Python
pycharm设置默认的UTF-8编码模式的方法详解
Jun 01 #Python
解决pycharm导入本地py文件时,模块下方出现红色波浪线的问题
Jun 01 #Python
Python常见反爬虫机制解决方案
Jun 01 #Python
解决python运行启动报错问题
Jun 01 #Python
利用python控制Autocad:pyautocad方式
Jun 01 #Python
You might like
php 不使用js实现页面跳转
2014/02/11 PHP
php实现mysql事务处理的方法
2014/12/25 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
2017/10/11 PHP
PHP钩子实现方法解析
2019/05/21 PHP
php桥接模式应用案例分析
2019/10/23 PHP
列表内容的选择
2006/06/30 Javascript
JavaScript 中的事件教程
2007/04/05 Javascript
jquery实现marquee效果(文字或者图片的水平垂直滚动)
2013/01/07 Javascript
JavaScript/Js脚本处理html元素的自定义属性解析(亲测兼容Firefox与IE)
2013/11/25 Javascript
jQuery获取节点和子节点文本的方法
2014/07/22 Javascript
Javascript原型链和原型的一个误区
2014/10/22 Javascript
JS验证IP,子网掩码,网关和MAC的方法
2015/07/02 Javascript
AngularJS  $on、$emit和$broadcast的使用
2016/09/05 Javascript
详解JavaScript常量定义
2017/01/03 Javascript
JavaScript控制浏览器全屏显示简单示例
2018/07/05 Javascript
「中高级前端面试」JavaScript手写代码无敌秘籍(推荐)
2019/04/08 Javascript
vue2 中二级路由高亮问题及配置方法
2019/06/10 Javascript
React学习之JSX与react事件实例分析
2020/01/06 Javascript
vue中的.$mount('#app')手动挂载操作
2020/09/02 Javascript
Vue+element+cookie记住密码功能的简单实现方法
2020/09/20 Javascript
vue-router 控制路由权限的实现
2020/09/24 Javascript
详解VUE中的插值( Interpolation)语法
2020/10/18 Javascript
[06:16]DOTA2守卫传承者——职业选手谈心路历程
2015/02/26 DOTA
python常见数制转换实例分析
2015/05/09 Python
总结Python编程中三条常用的技巧
2015/05/11 Python
Python中标准库OS的常用方法总结大全
2017/07/19 Python
Python数据分析中Groupby用法之通过字典或Series进行分组的实例
2017/12/08 Python
WebSphere 应用服务器都支持哪些认证
2013/12/26 面试题
护理学专业求职信
2014/06/29 职场文书
环保公益策划方案
2014/08/15 职场文书
领导干部作风整顿剖析材料
2014/10/11 职场文书
2014年党风廉政工作总结
2014/12/03 职场文书
2016年党员承诺书范文
2016/03/24 职场文书
撤回我也能看到!教你用Python制作微信防撤回脚本
2021/06/11 Python
MySql子查询IN的执行和优化的实现
2021/08/02 MySQL
Elasticsearch 基本查询和组合查询
2022/04/19 Python