密码难度检测

新建一个包,新建两个文件夹
一开始导包引用函数报错
在这里插入图片描述
应该用模块.函数
if name == ‘main’:是用来干嘛的
__name__是指bai示当前py文件调用方式的方法。如果它等于"main"就表du示是直接执行zhi,如果不是,则用dao来被别的文件调用,这个时候if就为False,那么它就不会执行最外层的代码了。
比如你有个Python文件里面
def XXXX():
#body
print “asdf”
这样的话,就算是别的地方导入这个文件,要调用这个XXXX函数,也会执行print “asdf”,因为他是最外层代码,或者叫做全局代码。但是往往我们希望只有我在执行这个文件的时候才运行一些代码,不是的话(也就是被调用的话)那就不执行这些代码,所以一般改为
def XXXX():
#body
if name=“main”:
print “asdf”
接下来上代码:

#! /usr/bin/python3
# -*- coding: utf-8 -*-
__author__ = "ZXP";
from DeterminePasswordStrength import Determine_password_strength1
print("请输入密码")
password_data=input()
print(password_data)
Determine_password_strength1.CheckIo(password_data);
#! /usr/bin/python3
# -*- coding: utf-8 -*-
__author__ = "ZXP";
import re
def CheckLen(data):
    return len(data)>=10
def CheckUpper(data):
    upper=re.compile('[a-z]+')
    match = upper.findall(data)
    if match:
        return True
    else:
        return False
def CheckLower(data):
    lower=re.compile('[a-z]+')
    match = lower.findall(data)
    if match:
        return True
    else:
        return False
def CheckNum(data):
    num=re.compile('[0-9]+')
    match = num.findall(data)
    if match:
        return True
    else:
        return False

def checkSymbol(data):
    symbol = re.compile('([^a-zA-Z0-9])+')
    match = symbol.findall(data)
    if match:
        return True
    else:
        return False


def CheckIo(data):
    if CheckLen(data):
        if CheckUpper(data):
            if CheckLower(data):
                if CheckNum(data):
                    return True

                else:
                    print("密码缺少数字")

                    return False
            else:
                print("密码缺少小写字母")
                return False

        else:
            print("密码缺少大写字母")
            return False

    else:
        print("密码长度不够")
        return False




猜你喜欢

转载自blog.csdn.net/weixin_43959743/article/details/108567754