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中条件选择和循环语句使用方法介绍
Mar 13 Python
python通过ElementTree操作XML获取结点读取属性美化XML
Dec 02 Python
python Django框架实现自定义表单提交
Mar 25 Python
Python中音频处理库pydub的使用教程
Jun 07 Python
Python基于多线程实现抓取数据存入数据库的方法
Jun 22 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
Jan 07 Python
python两个_多个字典合并相加的实例代码
Dec 26 Python
pytorch中获取模型input/output shape实例
Dec 30 Python
浅谈PyTorch的可重复性问题(如何使实验结果可复现)
Feb 20 Python
Selenium常见异常解析及解决方案示范
Apr 10 Python
翻转数列python实现,求前n项和,并能输出整个数列的案例
May 03 Python
Python docutils文档编译过程方法解析
Jun 23 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下网站防IP攻击代码,超级实用
2010/10/24 PHP
基于php在各种web服务器的运行模式详解
2013/06/03 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
2017/07/27 PHP
javascript数组的扩展实现代码集合
2008/06/01 Javascript
基于JQuery的动态删除Table表格的行和列的代码
2011/05/12 Javascript
EasyUI的treegrid组件动态加载数据问题的解决办法
2011/12/11 Javascript
jquerydom对象的事件隐藏显示和对象数组示例
2013/12/10 Javascript
Node.js程序中的本地文件操作用法小结
2016/03/06 Javascript
详解.vue文件中监听input输入事件(oninput)
2017/09/19 Javascript
用Webpack构建Vue项目的实践
2017/11/07 Javascript
实例分析JS与Node.js中的事件循环
2017/12/12 Javascript
javascript设计模式 ? 职责链模式原理与用法实例分析
2020/04/16 Javascript
vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据操作
2020/07/31 Javascript
Python多进程同步Lock、Semaphore、Event实例
2014/11/21 Python
在Python的Django框架中调用方法和处理无效变量
2015/07/15 Python
Python将多个excel表格合并为一个表格
2021/02/22 Python
python实现远程通过网络邮件控制计算机重启或关机
2018/02/22 Python
python 将字符串转换成字典dict的各种方式总结
2018/03/23 Python
详解python多线程、锁、event事件机制的简单使用
2018/04/27 Python
python创建文件时去掉非法字符的方法
2018/10/31 Python
Python使用mongodb保存爬取豆瓣电影的数据过程解析
2019/08/14 Python
如何修复使用 Python ORM 工具 SQLAlchemy 时的常见陷阱
2019/11/19 Python
python数据类型强制转换实例详解
2020/06/22 Python
使用jquery实现HTML5响应式导航菜单教程
2014/04/02 HTML / CSS
HTML5 在canvas中绘制文本附效果图
2014/06/23 HTML / CSS
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
经典优秀个人求职自荐信格式
2013/09/25 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
2014公司年终工作总结
2014/12/19 职场文书
工厂采购员岗位职责
2015/04/07 职场文书
上班迟到检讨书
2015/05/06 职场文书
2015年加油站站长工作总结
2015/05/27 职场文书
2019事业单位个人工作总结范文
2019/08/26 职场文书
Django如何创作一个简单的最小程序
2021/05/12 Python
JavaScript offset实现鼠标坐标获取和窗口内模块拖动
2021/05/30 Javascript