python3集合(set)

  • 集合(set)是一个无序的不重复元素序列
  • 集合可以用 { } 或者set ( ) 函数创建集合,创建一个空集合必须用set ( ),因为{ }是用来创建一个空字典
  • 格式为:basket = {‘a’,‘b’,‘c’}
    bakset = set (‘abc’)
    basket = {1,2,3}
    basket = set(‘123’)
    t = {‘ball’,‘smile’,‘cost’}
    t = set ((‘ball’,‘smile’,‘cost’))
>>> basket = {'apple','orange','apple','pear','orange','banana'}
>>> basket
{'orange', 'pear', 'banana', 'apple'} # 去重功能,输出的为不重复的项
>>> 'apple'in basket  #快速判断元素是否在集合中
True
>>> 'moneky'in basket
False
  • 集合间的运算
t = {'b','c','d'}     #t = set('bcd') 两种不同的表达方式 set()  和 { }
f = {'d','e','f' }    #f = set('def')
print(t)
print(f)
print(t-f)    #集合t中包含而集合f中不包含
print(t|f)    #并 集合t中包含的元素并f中包含的元素
print(t&f)    #交 集合t和f都包含的元素
print(t^f)    # 不同时包含于t和f的元素  
➜  pythoncode python3 holly_03_05.py
{'c', 'd', 'b'}
{'e', 'd', 'f'}
{'c', 'b'}
{'e', 'd', 'f', 'b', 'c'}
{'d'}
{'b', 'e', 'f', 'c'}
  • 集合的基本操作
    1,添加元素
    基本格式 t . add() 或 t . update()
    但两者有个区别即是,update将添加的元素视为可迭代对象,对其遍历后,依次添加到集合。如下列smile一次分隔开按字母添加于结婚中
t = {'b','c','d'} 
t.add('face')    #添加元素
print(t) 
t.update('smile')
print(t) 
➜  pythoncode python3 holly_03_05.py
{'face', 'd', 'c', 'b'}
{'face', 'c', 'l', 'e', 'd', 'i', 'm', 'b', 's'}

可以添加多个,一次用 , 隔开。可以用( ) 或 [ ]或 { }

t = {'b','c','d'} 
t.update({1,3})
print(t) 
t.update([1,3],[4,5])
print(t) 
t.update((1,3),(4,5))
print(t) 
➜  pythoncode python3 holly_03_05.py
{1, 3, 'b', 'd', 'c'}
{1, 3, 4, 5, 'b', 'd', 'c'}
{1, 3, 4, 5, 'b', 'd', 'c'}

2,移除元素。语法格式如下:
t.remove(‘a’) 如果集合中没有该元素则会报错

>>> t = {'b','c','d'}
>>> t.remove('b')
>>> t
{'c', 'd'}

t.discard(‘a’) 该方法如果集合中没有该元素则不会报错

>>> t = {'b','c','d'}
>>> t.discard('b')
>>> t
{'c', 'd'}

t.pop() 表示会随机地从集合中删除一个元素(多次执行的结果会不一样)

>>> t = {'b','c','d'}
>>> t.pop()
'b'
>>> t
{'c', 'd'}

3,计算集合元素的个数
语法格式为 len()

>>> t = {'bilibili','cost','smile'}
>>> len(t)
3

4,清空集合
语法格式为 t.clear()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值