Python编程快速上手——让繁琐工作自动化 第七章 实践项目
7.18.1 强口令检测
1、要求:
写一个函数,它使用正则表达式,确保传入的口令字符串是强口令。强口令的定义是:长度不少于8个字符,同时包含大写和小写字符,至少有一位数字。你可能需要用多个正则表达式来测试该字符串,以保证它的强度。
2、分析:
这个题目比较简单,只需在函数中用if语句逐一检查条件是否满足即可。我的想法是在最后显示所有不满足的条件,而不是在某一个条件不满足时就退出函数。
3、代码:
import re
def strong_command(string):
warning = ''
if len(string) < 8:
warning += 'You must input a string which has more than 8 characters.\n'
regex1 = re.compile(r'[a-z]')
if regex1.search(string) == None:
warning += 'You should contain at least one lower English character.\n'
regex2 = re.compile(r'[A-Z]')
if regex2