零基础学习python第五课笔记

集合set{}

定义空集合不能直接用{}否则它就成字典dict了,要用set()方法

str_1 = {}
print(type(str_1))                   print(type(set(str_1)))
<class 'dict'>                       <class 'set'>

唯一性--------去重复元素

str_1 = {'w', 'i', 'x', 'u', 'w', 'i', 'x', 'u'}
print(str_1)
{'w', 'i', 'u', 'x'}

集合是无序性的,不存在索引。

str_1 = {'w', 'd', 'g', 'z', 'd', 'x', 'x', 'y'}
print(str_1)
{'d', 'y', 'w', 'x', 'z', 'g'}#没有排序,元素之间随机更换位置

集合是具有可变性的,能改变对象。

交集( & )

insert_1 = {'k', 'i', 'd', 'x', 'y', 'g', 'n'}
extend_1 = {'w', 'z', 'd', 'i', 'x', 'y'} #交集就是把a和b的相同元素都合并到一起,把不同的剔除。
print(insert_1&extend_1)
{'x', 'i', 'd', 'y'}

并集

insert_1 = {'k', 'i', 'd', 'x', 'y', 'g', 'n'}
extend_1 = {'w', 'z', 'd', 'i', 'x', 'y'}     #并集就是把a和b所有元素集合到一起合并。
print(insert_1|extend_1)
{'z', 'k', 'w', 'y', 'i', 'x', 'n', 'g', 'd'}

补集( - )

upper1 = {'w', 'i', 'x', 'u'}
lower1 = {'i', 'x', 'u', 'y'}
print(upper1-lower1) 这里把a和b相同的元素剔除 print(lower1-upper1) 
{'w'}                只留下a剩余的元素       {'y'}        #这里只留下b剩余的元素

add(添加元素)
upper1 = {'w', 'i', 'x', 'u'}
upper1.add('y')             #不能添加列表和元组,但可以添加bool, int
print(upper1)               
{'i', 'u', 'w', 'y', 'x'}

updata批量添加
upper1 = {'w', 'i', 'x', 'u'}    
upper1.update(['520', '9421'])   会把增加的元素全部拆分掉,想元素不被拆分掉只要套层外壳[]就可以了#重点记
{'9421', 'u', '520', 'x', 'w', 'i'}                                     它只会把外壳拆分掉。

pop                          
upper1 = {'w', 'i', 'x', 'u'}      #随机删除集合里的元素
upper1.pop()
print(upper1)
{'sss', '520', 'u', 'kkk', 'w', 'i', '9421'}


lower1 = {'i', 'x', 'u', 'y'}
lower1.remove('y')                #指定元素删除,不存在就报错 
print(lower1)


discard                                                             #指定元素删除   
upper1 = {'w', 'i', 'x', 'u'}    
upper1.discard('w')                     upper1.discard('q')
print(upper1)                           print(upper1)
{'u', 'x', 'i'}                         {'u', 'i', 'w', 'x'}        #没有找到指定元素不会报错


isdisjoint  #判断有无交集,有交集返回False,无交集返回True,可以理解为判断有没有相同的元素,有False,没有True
a = {'w', 'i', 'x', 'u'}
b = {'w', 'i', 'x', 'u', 'y'}
print(upper1.isdisjoint(lower1))                         
False
                
    
issubset   #判断a是否为b的子集,是就返回True,不是就返回False    
a = {'w', 'i', 'x', 'u'}
b = {'w', 'i', 'x', 'u', 'y'} 
print(a.issubset(b))        print(b.issubset(a))#这里的b代表a,a代表b的意思-----a不是b的子集,所以False
True                        False


issuperset     #判断b是否为a的子集,是就返回True,不是返回False
a = {'w', 'i', 'x', 'u'}
b = {'w', 'i', 'x', 'u', 'y'}             
print(a.issuperset(b)) #b不是a的子集       print(b.issuperset(a)) 
False                                     True         #这里b代表a,a代表b,b是a的子集所以True            

union   #返回两个集合的并集,就是把不一样的元素剔除,一样的元素留下。
a = {'w', 'i', 'x', 'u'}
b = {'w', 'i', 'x', 'u', 'y'}   
print(a.union(b))
{'x', 'y', 'u', 'i', 'w'}

字典dict{}

特性
               #键值对{'w'(键key):1(值value)},唯一性,3.6后是有序性的,可变性,常用查看方法是通过键获取值(print(a['键key'])),对其重新赋值a['键'] = 1234可以达到修改效果。 
upper2 = {'w':1, 'i':2, 'x':3, 'u':4}  
print(upper2['w'])                       upper2['w'] = 1234
1                                        print(upper2)
                                         {'w': 1234, 'i': 2, 'x': 3, 'u': 4}                        

copy-----复制
upper2 = {'w':1, 'i':2, 'x':3, 'u':4}
upper1 = upper2.copy()
print(upper1)
{'w': 1, 'i': 2, 'x': 3, 'u': 4}

 setdefault---------#有则查(键),无则增(在结尾增加),如果setdefault('y', )括号里后面没有输入值的话则增加的值为空None                                                 
upper2 = {'w':1, 'i':2, 'x':3, 'u':4}                      upper2.setdefault('y', 5) 
print(upper2.setdefault('x'))                              print(upper2)    
3                                              {'w': 1, 'i': 2, 'x': 3, 'u': 4, 'y': 5}
                                        

clear        #清空元素,注意:如果直接放在print()上打印的话,返回的则是None空
upper2 = {'w':1, 'i':2, 'x':3, 'u':4}
upper2.clear()                                           print(upper2.clear())
print(upper2)                                            None
{}


pop                   #这里通过键来进行删除的,如果直接放进print()上打印的话则会返回对应的键值
upper2 = {'w':1, 'i':2, 'x':3, 'u':4}                    print(upper2.pop('x'))
upper2.pop('x')                                          3
print(upper2)
{'w': 1, 'i': 2, 'u': 4}


popitem       #从右往左删,如果直接放进print()打印的话则返回的是末尾元组
upper2 = {'w':1, 'i':2, 'x':3, 'u':4}
upper2.popitem()
print(upper2)                                             print(upper2.popitem())
{'w': 1, 'i': 2, 'x': 3}                                  ('u', 4)

get       #通过键查值
lower2 = {'i':1, 'x':2, 'u':3, 'y':4}
print(lower2.get('u'))
3

keys     #查看所有键,可迭代对象----(序列类型)
lower2 = {'i':1, 'x':2, 'u':3, 'y':4}
print(lower2.keys())
dict_keys(['i', 'x', 'u', 'y'])

values  #查看所有值
lower2 = {'i':1, 'x':2, 'u':3, 'y':4}
print(lower2.values())
dict_values([1, 2, 3, 4])

items() #以列表返回可遍历的元组数组------(键,值)
lower2 = {'i':1, 'x':2, 'u':3, 'y':4}
print(lower2.items())
dict_items([('i', 1), ('x', 2), ('u', 3), ('y', 4)])

update    #通过键,有就修改值,没有就增加键值 a.update({})  ,直接放在print打印的话返回None
lower2.update({'w':2, 'i':5, 'u':3})
print(lower2)
{'i': 5, 'x': 2, 'u': 3, 'y': 4, 'w': 2}
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值