VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > 简明python教程 >
  • 密码类(2)

 

 

 

二、黑客语解密:将英语中的英文字母替换为数字和特殊符号

table = ' '. maketrans (before , after) :创建映射表

str1 . translate(table) : 可以将table中的字符按映射表中的顺序进行替换

替换表:0  1  3  4  5  6  7  $

               o   i  e  a  s  g  t   s   

1
2
3
4
5
str1 = input()
before = '0134567'
after = 'oieasgt'
table = ''.maketrans(before, after)     #创建映射表
print(str1.translate(table))

 

 

三、密码强度判断:用户输入一个字符串作为密码,判断密码强度

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#判断密码字符串长度是否大于8
#是否包含数字     string.digits          可返回'0123456789'
#是否包含小写字母 string.ascii_lowercase 可返回'abcdefghijklmnopqrstuvwxyz'
#是否包含大写字母 string.ascii_uppercase 可返回'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
#是否包含特殊字符 string.punctuation     可返回'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
#长度小于8弱密码,长度大于等于8且包含至少2种字符为中等强度,包含3种字符为较强,包含全部4种字符为极强。
 
 
import string
 
pwd = input()
strong = = al = au = pu = 0
for ch in pwd:
    if ch in string.digits:   #是否包含数字
        = 1
    elif ch in string.ascii_lowercase:  #是否包含小写字母
        al = 1
    elif ch in string.ascii_uppercase:   #是否包含大写字母
        au = 1
    elif ch in string.punctuation:  #是否包含指定的标点符号
        pu = 1
if len(pwd) < 8:
    strong = 0
else:
    strong = + al + au + pu
if strong < 2:
    print('弱')
elif strong == 2:
    print('中')
elif strong == 3:
    print('强')
elif strong == 4:
    print('极强')

相关教程