需求:
1、密碼必須不少於6位
2、密碼不能包含中文
3、密碼不能有特殊字元
4、密碼裡至少有乙個大寫字母
效果如圖所示:
完整**如下:
from tkinter import
*import re
root = tk(
)root.title(
"密碼動態驗證"
)root.geometry(
"350x150"
)root.resizable(0,
0)f1 = frame(root, pady=35)
f1.pack(
)def
reg2
(password)
: zh = re.
compile
('[\u4e00-\u9fa5(\\w)]'
)# \w表示匹配任何非unicode的單詞字元相當於[^a-za-z0-9]中文(\u4e00-\u9fa5)
match = zh.findall(password)
capital_letters = re.
compile
('[a-z]+'
) match1 = capital_letters.findall(password)
if match:
match = re.sub(r"\['",""
, match[0]
) match = re.sub(r"\']",""
, match[0]
) tishi.
set(
'有中文或特殊字元:%s'
% match)
print
('有中文或特殊字元:%s'
% match)
return
false
elif
len(password)
<6:
tishi.
set(
"密碼不能小於6位"
)print
("密碼不能小於6位"
)elif
not match1:
tishi.
set(
"請至少輸入乙個大寫字母"
)print
("請至少輸入乙個大寫字母"
)else
: tishi.
set(
"當前符合條件密碼:"
+ password)
print
("當前符合條件密碼:"
+ password)
return
true
tishi = strin**ar(
)reg = f1.register(reg2)
l1 = label(f1, text=
"密 碼:"
).grid(row=
0, column=0)
e1 = entry(f1, validate=
"key"
, show=
'*', validatecommand=
(reg,
'%p'))
e1.grid(row=
0, column=1)
label(f1, textvariable=tishi,wraplength=
300)
.grid(row=
1,column=
0,columnspan=3)
root.mainloop(
)
C語言 模擬三次密碼輸入
問題 編寫 模擬三次密碼輸入的場景 最多能輸入三次密碼,密碼正確,提示 登入成功 密碼錯誤 可以重新輸入,最多輸入三次。三次均錯,則提示退出程式 思路 最多可以輸入三次密碼,則可以使用for語句,迴圈三次 定義字元陣列,用strcmp函式將輸入的密碼和原密碼比較 如果密碼正確,break跳出迴圈,否...
猜數字 模擬3次密碼輸入 折半查詢
1.完成猜數字遊戲 1 100 思路 主要可分為兩部分,一部分是是否進入遊戲,可自己設定進入條件,退出條件,以及輸入錯誤條件,可形成乙個函式。另一部分是進入遊戲後,使用者猜的數字是否猜中,此處可利用隨機數來進行核對,遊戲也比較有趣,在猜的過程中,猜中就退出,沒中就繼續猜直至猜中跳出。define c...
c 控制台模擬輸入密碼出現 號
include include 秘密在於conio.h中的getch 從鍵盤中讀取字元時,並不會在螢幕上輸出已經輸入的字元,而用乙個putch 來哄騙,代表已經輸入乙個字元 怪不得這個標頭檔案要叫conio.h,con的意思就有哄騙,看來就是由此而來.using namespace std int ...