.    # 密码安全性检查代码
. #
. # 低级密码要求:
. # . 密码由单纯的数字或字母组成
. # . 密码长度小于等于8位
. #
. # 中级密码要求:
. # . 密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)任意两种组合
. # . 密码长度不能低于8位
. #
. # 高级密码要求:
. # . 密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)三种组合
. # . 密码只能由字母开头
. # . 密码长度不能低于16位
#低级密码要求
#.密码由纯数字或字母组成
#.密码长度小于等于8位 '''isbool = True
while isbool:
pwd1 = input("低级密码测试")
if pwd1.isdigit() or pwd1.isalpha():
print("数字或密码")
isbool = False
else:
print("不是数字或字母")
isbool = True
continue
if len(pwd1)<=:
print("长度小于8")
isbool = False
else:
print("长度不正确")
isbool = True
continue
''' symbols = r'~!@#$%^&*()_=-/,.?<>;:[]{}|\''
chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
nums = '' isbool = True
while isbool:
pwd = input("请输入要检查的密码")
length = len(pwd)
#isspace()是否都为空格
while(pwd.isspace() or length==):
pwd = input("密码不能为空,请重新输入")
# 判断长度 0低,1中,2高
flag_len =
if(length<=):
flag_len =
elif(<length<):
flag_len=
else:
flag_len=
#判断是否包含特殊字符
flag_con=
for each in pwd:
if each in symbols:
flag_con+=
break
#判断是否包含字母
flag_chars=
for each in pwd:
if each in chars:
flag_chars +=
break
#判断是否包含数字
flag_num =
for each in pwd:
if each in nums:
flag_num+=
break
if (pwd.isdigit() or pwd.isalpha()):
flag_num=
flag_chars= print("您的密码安全等级为:")
if flag_len== or (flag_num== and flag_chars==):
print("密码等级低")
elif(flag_len== and flag_con== and flag_chars==):
print("密码等级中级")
elif(flag_len== and flag_num== and flag_chars==):
print("密码等级中级")
elif(flag_len== and flag_con== and flag_num==):
print("密码等级中级")
elif(flag_len== and flag_con== and flag_chars==):
print("密码等级高级")
elif(flag_len== and flag_num== and flag_chars==):
print("密码等级高级")
elif(flag_len== and flag_con== and flag_num==):
print("密码等级高级")

python小练习,密码等级问题的更多相关文章

  1. python小练习之二

    title: python小练习之二 tags: 新建,模板,小书匠 grammar_cjkRuby: true --- python小练习之二 需求:实现用户登录,用户名和密码保存到文件里,连续输入 ...

  2. Python 小案例实战 —— 简易银行存取款查询系统

    Python 小案例实战 -- 简易银行存取款查询系统 涉及知识点 包的调用 字典.列表的混合运用 列表元素索引.追加 基本的循环与分支结构 源码 import sys import time ban ...

  3. 第一个python小脚本

    第一个python小实验 前言 作为一个工作1年的linux运维搬砖师来说,发现没点开发能力真的是不好混啊.于是下定决心学习python! 直接上刚写的语句(大神莫鄙视) 通过控制台输入一个账号密码, ...

  4. 密码等级:至少包含字母、大小写数字、字符中的两种 JS实现方案

    前言 密码,如果设置的太简单,很容易就被攻破,所以很多网站将密码设置的要求设置的挺严格,一般是字母.数字.字符3选2,区分大小写.对于设置得太简单的密码,予以错误提示.或者予以密码等级(低中高)显示, ...

  5. python 暴力破解密码脚本

    python 暴力破解密码脚本 以下,仅为个人测试代码,环境也是测试环境,暴力破解原理都是一样的, 假设要暴力破解登陆网站www.a.com 用户 testUser的密码, 首先,该网站登陆的验证要支 ...

  6. Python小工具--删除svn文件

    有的时候我们需要删除项目下的svn相关文件,但是SVN会在所有的目录下都创建隐藏文件.svn,手工一个个目录查找然后删除显然比较麻烦.所以这里提供了一个Python小工具用于批量删除svn的相关文件: ...

  7. python小练习(自己瞎倒腾)

    python小练习 在网上无意中看到一个问题,心血来潮写了写,觉得比较有意思,以后遇到这种有意思的小练习也记录下. #!/usr/bin/env python # -*- coding:utf-8 - ...

  8. Python小代码_2_格式化输出

    Python小代码_2_格式化输出 name = input("name:") age = input("age:") job = input("jo ...

  9. Python小代码_1_九九乘法表

    Python小代码_1_九九乘法表 max_num = 9 row = 1 while row <= max_num: col = 1 while col <= row: print(st ...

随机推荐

  1. day-02(css,js)

    本文档并非个人所写,只是便于参考:回顾: html: 作用:展示 文件标签: <html> <head> <title></title> </he ...

  2. bzoj3718 树状数组

    https://www.lydsy.com/JudgeOnline/problem.php?id=3718 有时候,要透过题面看到本质 题意 你的老板命令你将停车场里的车移动成他想要的样子.停车场是一 ...

  3. windows下配置host不生效问题

    今天遇到了host配置之后不生效的问题,原因是文本编辑器用的是非windows格式,再notepad++右下角切换一下即可,将notepad++ 视图-显示符号-显示所有字符勾上之后可以看到windo ...

  4. linux安装Subversion版本控制工具(Subversion + Apache + jsvnadmin)

    操作系统:Centos 6.7 集成环境服务器:10.0.210.112 操作用户:root 建议安装前更新操作系统 # yum update 更新完成后重启 # reboot 1: 安装 Apach ...

  5. 关于react上线系列问题及解决方案

    近使用react做了一个音乐播放器小项目,在线下开发完成后,测试一切都没有问题,于是打算打包上线.首先注册了一个新浪云账号,然后创建了一个SAE应用实例,再然后就照着新浪云给出的远程仓库进行push. ...

  6. java生产环境增量发版陷阱【原】

    前言 在生产环境,我们为了降低发版风险,一般都只做增量发布,不做全量发布. 除非项目只有一到两人开发,对时间线和代码脉络结构一清二楚,才可全量发布. 然而增量发布也是有一定隐藏陷阱在里面的,以下就是笔 ...

  7. 解决Lost connection to MySQL server during query错误方法

    昨天使用Navicat for MySQL导入MySQL数据库的时候,出现了一个严重的错误,Lost connection to MySQL server during query,字面意思就是在查询 ...

  8. Golang入门教程(九)复合数据类型使用案例二

    参考:http://www.runoob.com/go/go-slice.html 目录 切片 字典(map) 函数(func) 接口(interface) 通道(chan) 四.切片(Slice) ...

  9. Spark RDD基本概念与基本用法

    1. 什么是RDD RDD(Resilient Distributed Dataset)叫做分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变.可分区.里面的元素可并行计算的集合.RDD具 ...

  10. Spring boot 工具类静态属性注入及多环境配置

    由于需要访问MongoDB,但是本地开发环境不能直接连接MongoDB,需要通过SecureCRT使用127.0.0.2本地IP代理.但是程序部署到线上生产环境后,是可以直接访问MongoDB的,因此 ...