ps:非空即真,非0即真(空,0都返回False)
1 pwd=input('pwd:').strip()
2 if pwd:                 #三种判断为空的方法(直接判断就可以)
3 # if pwd!='':
4 # if len(pwd)!=0:
5     print('输入不为空')
6 else:
7     print('密码不能为空')
集合(set)是一个无序不重复元素的序列。(没有下标)

集合天生可以去重,可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
(1)小练习
 1 import string
 2 pwd=input('pwd:').strip()
 3 p_set=set(pwd)
 4 print('小写字母取',p_set.intersection(string.ascii_lowercase))
 5 print('大写字母取',p_set.intersection(string.ascii_uppercase))
 6 print('特殊字符取',p_set.intersection(string.punctuation))
 7 print('数字取',p_set.intersection(string.digits))
 8 if p_set.intersection(string.ascii_uppercase) \
 9         and p_set.intersection(string.ascii_lowercase)\
10     and p_set.intersection(string.punctuation)\
11         and p_set.intersection(string.digits):#全部取交集
12     print('密码合法')
13 else:
14     print('密码必须包含大写、小写、数字、特殊字符')
 

交集、并集、差集

 1 s2=set('789456789456789456')
 2 s3={'1','2','3','4','566','4','48'}          #集合
 3 d={'d':'bn'}                            #字典
 4 print(s2)
 5 
 6 # 交集,并集,差集
 7 
 8 # 交集:两个集合相同的地方(.intersection())
 9 print(s2 & s3)   #交集(常用)
10 
11 # 并集:两个集合合并到一起,然后去重(.union())
12 print(s2 | s3)      #并集
13 
14 # 差集:取一个集合存在,另一个集合不存在的元素(.difference())
15 print(s2 - s3)      #差集
16 # 对称差集:取两个集合里面相同的(.symmetric_difference())
17 print(s2 ^ s3)
18 
19 
20 s2.add('111111111')#加一个元素
21 s2.pop()#随机删除一个元素
22 s2.remove('111111111')#删除指定元素
23 s2.update({'1','2'})#把另外一个集合加进去
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。