python 实现密码难度自查

import re
from tkinter import*

class Window(object):
    def __init__(self):
        self.root = Tk()
        self.root.title("check your password")
        self.root.geometry("300x300+500+500")

        self.lblpass = Label(self.root,text="password:")
        self.lblpass.grid(row=0,column=0)

        self.txtinput = Entry(self.root)
        self.txtinput.grid(row=0,column=1)

        self.btncheck = Button(self.root,text="check",command=self.checkall)
        self.btncheck.grid(row=1,column=0,columnspan=2)

        self.result = StringVar()

        self.lblresult = Label(self.root, textvariable=self.result)
        self.lblresult.grid(row=2,column=0,columnspan=2)

        self.root.mainloop()

    def checkLen(self):
        if len(self.data)>=10:
            self.score +=20
            return"Length is True"
        else:
            return"Length is False"


    def checkUpper(self):
        upper = re.compile("[A-Z]+")
        match = upper.findall(self.data)
        if match:
            self.scord += 20
            return"Upper is True"
        else:
            return"Upper is False"


    def checkLower(self):
        upper = re.compile("[a-z]+")
        match = upper.findall(self.data)
        if match:
            self.scord += 20
            return "Lower is True"
        else:
            return "Lower is False"

    def checkSymbol(self):
        upper = re.compile("([^a-zA-Z0-9])+")
        match = upper.findall(self.data)
        if match:
            self.scord += 20
            return "Symbol is True"
        else:
            return "Symbol is False"


    def checkNumber(self):
        upper = re.compile("[0-9]+")
        match = upper.findall(self.data)
        if match:
            self.scord += 20
            return "Upper is True"
        else:
            return "Upper is False"

    def checkall(self):
        self.data = self.txtinput.get()
        self.score = 0

        strtmp = "Your password is:{}\n".format(self.data)
        strtmp += self.checkLen()+"\n"
        strtmp += self.checkUpper()+"\n"
        strtmp += self.checkLower()+"\n"
        strtmp += self.checkNumber()+"\n"
        strtmp += self.checkSymbol()+"\n"

        self.result.set(strtmp)

if __name__=="__main__":
    app = Window()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值