python 集合

集合

  • 无序
  • 不可重复
  • 不可更改
    • 内部元素可哈希(不可变)
    • 集合本身不可哈希

用途:

  • 去重(列表–>集合,自动去重)
  • 关系测试

集合的创建

  • 空集合
a=set()
print(type(a))

<class ‘set’>

  • 创建多元素集合
st = {1,2,3,"a","b","c"}
print(st)

{1, 2, 3, ‘b’, ‘c’, ‘a’}

  • 强转
#转化成列表列表
set1 = {1,2,3,4,5,6}
print(list(set1))
print(tuple(set1))

[1, 2, 3, 4, 5, 6]
(1, 2, 3, 4, 5, 6)

集合常见操作

  • .add

    .updata

  • .pop 随机删一个元素

    .discard 移除元素,不存在,不会出错

    .remove 移除元素,不存在,会出错

    del set

集合的基本运算

子集

a = set("abc")
b = set("def")
c = set("ab")
print(a,b,c)
print(a>c)

{‘a’, ‘b’, ‘c’} {‘d’, ‘f’, ‘e’} {‘a’, ‘b’}
True

list_1 = set([1,4,5,7,3,6,7,9])
list_2 = set([2,6,6,2,1,55,12])
#交集
#print(list_1.intersection(list_2))
print(list_1 & list_2)
#并集
#print(list_1.union(list_2))
print(list_1 | list_2)
#差集
#print(list_1.difference(list_2))
print(list_1 - list_2)
#子集
print(list_1.issubset(list_2))
#父集
print(list_1.issuperset(list_2))
#对称差集
#print(list_1.symmetric_difference(list_2))
print(list_1 ^ list_2)

{1, 6}
{1, 2, 3, 4, 5, 6, 7, 9, 12, 55}
{3, 4, 5, 7, 9}
False
False
{2, 3, 4, 5, 7, 9, 12, 55}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值