python入门基础:集合

特点:

不允许有重复元素,如果添加重复元素,则会自动过滤,可以进行交集、并集的运算。

创建集合

s1 = set() #空集合 不能是{},这是字典
s2 = {1,2,3,4}
print(s1)
print(set([30,40,50])) #通过列表创建
print(set((11,22,33))) #通过元组创建
print(set('hello')) #通过字符串创建 
print(set({'name':'⼤宝','age':20})) #通过字典创建,得到⼀个键的集合
#注意:重复元素在set中会被⾃动过滤

集合操作

1 增加
add添加不可变元素

s1.add(5)
# s1.add([6,7]) #不能添加列表,列表和字典都是不可哈希的
s1.add((6,7)) #可以添加元组元素,元组是可哈希的
print(s1)
#set.update(s) s必须是可迭代的对象:列表、元组、字符串、字典
#update会把列表、元组、字符串打碎添加到集合中
s1 = {1,2,3,4}
s1.update([5,6])
s1.update((7,8))
s1.update('hello')
s1.update({'1':10,'2':20}) #将字典的键添加到s1
print(s1)

2. 删除
set.remove(elem)

set3 = {1,2,3,4,5,6}
set3.remove(4) #直接删除指定元素
print(set3)
print(set3.pop()) #删除任意元素,并返回该元素的值
print(set3)
set3.discard(10) #删除的元素不存在,不会报错
#set3.remove(10) #如果元素不存在,则报错:KeyError

3.元素个数

print(len(set3))

4 .成员操作

print(2 in set3) #True

5.并、交、差集

s1 = {1,2,3,4,5}
s2 = {3,4,5,6,7}
print(s1 | s2) #并
print(s1 & s2) #交集
print(s1 - s2) #差集

集合推导式

语法:{exp for var in iterable}
res = {x for x in range(2,10)}
print(res)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值