【python基础】集合的定义与使用

1. 集合的使用

集合 关键字set 特点:无序的不重复

list1 = [3,5,7,9,4,6,8,0,3]
# 去重,首先声明集合
s1 = set()   #<class 'set'>
s2 = {} # 声明空的集合只能用第一种  #<class 'dict'>

2. 列表的快速去重

s3 = set(list1)
print(s3)

输出:

{0, 3, 4, 5, 6, 7, 8, 9}

3. 集合的添加

add


s1.add('hello')
s1.add('xiaoxiong')
s1.add('hellllll')

print(s1)

输出:

{'xiaoxiong', 'hello', 'hellllll'}

update:

t4 = ('ff','ss') #元组
s1.update(t4)
print(s1)

{'xiaoxiong', 'hellllll', 'hello', 'ss', 'ff'}

4. 集合的删除

remove()

s1.remove('ff')
print(s1)

输出:

{'ss', 'hellllll', 'hello', 'xiaoxiong'}
s1.clear()
print(s1)

输出:

set()

pop:

t4 = ('ff','ss') #元组
s1.update(t4)
print(s1)
s1.remove('ff')
print(s1)
s1.pop()
print(s1)

输出:

{'ss', 'hellllll', 'ff', 'hello', 'xiaoxiong'}
{'ss', 'hellllll', 'hello', 'xiaoxiong'}
{'hellllll', 'hello', 'xiaoxiong'}

discard
找不到的key值不会报错


```python
s1 = set()
s1.add('hello')
s1.add('xiaoxiong')
s1.add('hellllll')

t4 = ('ff','ss') #元组
s1.update(t4)
print(s1)
s1.discard('ff')
print(s1)
{'ff', 'xiaoxiong', 'ss', 'hello', 'hellllll'}
{'xiaoxiong', 'ss', 'hello', 'hellllll'}

5. 判断集合内容是否相等

不支持加号 乘号,可以用减号(差集)

set2 = {1,2,3}
set3 = {1,2,3}

print(set2 == set3)

True

6. 集合的减号和difference

set2 = {1,2,3}
set3 = {1,2,3,4,5}

set4 = set3 - set2
print(set4)

set5 = set3.difference(set2)
print(set5)
{4, 5}
{4, 5}

7. 集合的交集

set2 = {1,2,3}
set3 = {1,2,3,4,5}
set6 = set2 & set3  
print(set6)

set7 = set2.intersection(set3)
print(set7)
{1, 2, 3}
{1, 2, 3}

8.集合的并集

set2 = {1,2,3,7,8}
set3 = {1,2,3,4,5}
set8 = set2 | set3
print(set8)
set9 = set2.union(set3)
print(set9)
{1, 2, 3, 4, 5, 7, 8}
{1, 2, 3, 4, 5, 7, 8}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值