Python实现密码强度校验程序:规则与代码详解

程一诺
程一诺
发布时间:2026-10-14 | 4人浏览过
原创

本文介绍如何使用Python编写一个密码强度校验程序。程序依据密码长度(低于8位、8-16位、16位以上)以及是否包含数字、字母和特殊字符进行综合评分,将密码分为低、中、高三个等级。代码实现了循环输入、空值检查及字符类型统计,并在最后给出针对低中等级密码的具体优化建议,如强制包含三种字符、字母开头及长度不低于16位。

Python密码强度校验程序介绍

程序介绍

本程序利用

1.密码必须由数字、字母及特殊字符三种组合

2.密码只能由字母开头

3.密码长度不能低于16位

来判断密码程度。

首先,把可输入的字符写进去:

定义允许的特殊字符与字母数字集合


symbols = r'''`!@#$%^&*()_+-=/*{}[]\|;:?/<>'''
chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
nums = '0123456789'

然后开始循环并判断密码长度:

实现密码长度分级逻辑


while 1:
  print('--------------密码安全级别检查-------------------')
  passwd = input('请输入需要检查的密码组合:')
  length = len(passwd)
  while passwd.isspace() or length == 0:
    passwd = input('您输入的密码为空,请重新输入:')
  if length <= 8:
    flag_len = 1
  elif 8< length < 16:
    flag_len = 2
  else:
    flag_len = 3
  flag_con = 0

然后判断字符:

统计密码中各类字符的存在情况


for each in passwd:
    if each in symbols:
      flag_con += 1
      break
  for each in passwd:
    if each in chars:
      flag_con += 1
      break
  for each in passwd:
    if each in nums:
      flag_con += 1
      break

最后评定密码,并给出建议:

综合评定密码等级并输出优化建议


while True:
    print('您的密码安全级别评定为:',end='')
    if flag_len == 1 or flag_con == 1:
      print('低')
    elif flag_len == 2 or flag_con == 2:
      print('中')
    else:
      print('高')
      print('请继续保持!')
      break
    print('请按以下方式提升您的密码安全级别:\n\
    \t1.密码必须由数字、字母及特殊字符三种组合\n\
    \t2.密码只能由字母开头\n\
    \t3.密码长度不能低于16位')
    break

运行结果

以上就是Python设计密码强度校验程序的详细内容,更多关于Python密码强度检验的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表