python判断密码强度_python – 检查密码的强度(如何检查条件)

本文介绍了如何使用Python通过正则表达式来判断密码的强度。密码被认为是强密码,需要满足以下条件:长度至少8个字符,包含至少1个数字,1个大写字母,1个小写字母以及1个特殊字符。文中提供了一个名为`password_check`的函数,用于检查这些条件并返回详细的验证结果。
摘要由CSDN通过智能技术生成

你好

最好的方法是使用正则表达式搜索

这是我目前使用的功能

def password_check(password):

"""

Verify the strength of 'password'

Returns a dict indicating the wrong criteria

A password is considered strong if:

8 characters length or more

1 digit or more

1 symbol or more

1 uppercase letter or more

1 lowercase letter or more

"""

# calculating the length

length_error = len(password) < 8

# searching for digits

digit_error = re.search(r"\d", password) is None

# searching for uppercase

uppercase_error = re.search(r"[A-Z]", password) is None

# searching for lowercase

lowercase_error = re.search(r"[a-z]", password) is None

# searching for symbols

symbol_error = re.search(r"[ !#$%&'()*+,-./[\\\]^_`{|}~"+r'"]', password) is None

# overall result

password_ok = not ( length_error or digit_error or uppercase_error or lowercase_error or symbol_error )

return {

'password_ok' : password_ok,

'length_error' : length_error,

'digit_error' : digit_error,

'uppercase_error' : uppercase_error,

'lowercase_error' : lowercase_error,

'symbol_error' : symbol_error,

}

编辑:

在这里提出Lukasz的建议是对特殊符号条件验证的更新

symbol_error = re.search(r"\W", password) is None

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值