Python学习之路07——集合

创建集合

set(iterable)
集合中的元素不能为 list、dict、set,使用 {} 创建集合
集合中每个元素只会出现一次,且集合中的元素无序
# 使用 {} 创建集合
>>> S1 = {1,2,3,4,5}
>>> S1
{1, 2, 3, 4, 5}

# 使用 set() 创建集合:只接受一个参数
>>> S2 = set()
>>> S2
set()
>>> S3 = set([1,2,3,4,5]) 
>>> S3
{1, 2, 3, 4, 5}

集合中的常用方法

add

add(element)
用于向集合中添加元素,若该元素已存在则添加无效
>>> S1 = {1,2,3,4,1,2,3,4}
>>> S1
{1, 2, 3, 4}
>>> S1.add(5)
>>> S1.add((1,2,3))
>>> S1
{1, 2, 3, 4, 5, (1, 2, 3)}
>>> S1.add(5)
>>> S1
{1, 2, 3, 4, 5, (1, 2, 3)}

union、difference

union(set1, set2, ...)
用于得到一个新的集合,新的集合为原集合和参数列表中集合的并集

difference(set1, set2, ...)
用于得到一个新的集合,新集合中的元素在原集合中而不在参数列表中的集合中
>>> S1 = {1,2,3,4}
>>> S2 = {3,5,6,7}
>>> S3 = {4,7,8,9}
>>> S1.union(S2, S3)
{1, 2, 3, 4, 5, 6, 7, 8, 9}
>>> S1.difference(S2, S3)
{1, 2}

pop、remove、discard、clear、del

pop()
用于随机弹出集合中的一个元素

remove(element)
用于删除集合中的元素
若该元素不存在,则抛出KeyError

discard(element)
用于删除集合中的元素
若该元素不存在,则什么都不做

clear()
用于清空集合

del方法用于删除集合
>>> S1 = {1,2,3,4,5}
>>> S1.remove(1)
>>> S1
{2, 3, 4, 5}
>>> S1.remove(6)
KeyError: 6
>>> S1.discard()
>>> S1.clear()
>>> S1
set()
>>> del S1
>>> S1
NameError: name 'S1' is not defined

copy

copy()
用于得到一个与原集合元素一样的新集合,为深拷贝
>>> S1 = {1, 2, 3}
>>> S2 = S1.copy()
>>> S1 == S2
True
>>> S1 is S2
False

不可变集合

frozenset(iterable)
用于声明不可变集合,声明后集合不可修改
>>> S1 = frozenset([1,2,3,4,5])
>>> S1
frozenset({1, 2, 3, 4, 5})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值