[转载] Python集合set

参考链接: Python集合set| update

Python集合set 

两种集合的定义方法 

定义集合的方法一:直接定义法 

a = {1,2,3}

print(type(a))

 

<class 'set'>

 

特别注意空集合的定义法不同于列表、元组,因为Python默认

    

     

      

       

        {

       

       

        }

       

      

      

       \{\}

      

     

    {}为字典,所以空集合的定义使用强转的方式。 

a = {}

print(type(a))

 

<class 'dict'>  #字典类型

 

定义集合的方法二:使用强转的方式定义 

a = set({})

print(type(a))

 

集合的性质 

集合具有元素不重复性、唯一性、无序性,所以集合不能够通过索引取值,经常使用强转集合的方式去重。 

a = {1,1,1,1,2}

print(a)

 

{1, 2}

 

集合运算 

集合属于可变类型,只能随机取值,若要精确取值则要转换为列表,属于散列类型。 

& 交集 a&b | 并集 a|b 

- 补集 a-b b在a中的补集 

交集运算 

a = {1,2,3,4,5}

b = {2,3,4,5,6,7,8}

print(a & b)

 

{2, 3, 4, 5}

 

并集运算 

a = {1,2,3,4,5}

b = {2,3,4,5,6,7,8}

print(a | b)

 

{1, 2, 3, 4, 5, 6, 7, 8}

 

补集运算 

a = {1,2,3,4,5}

b = {2,3,4,5,6,7,8}

print(a - b)

 

{1}

 

集合的方法 

add方法 

#在原集合末尾添加元素

a = {1,2,3,4,5}

a.add(6)

print(a)

 

{1, 2, 3, 4, 5, 6}

 

update方法 

#可以添加列表字符串和集合,若为字符串,则字符串拆为字符,单个添加

#使用update时候,必须是可迭代对象

a = {1,2,3,4,5}

a.update([7,8])

print(a)

a.update('12343')

print(a)

 

{1, 2, 3, 4, 5, 7, 8}

{1, 2, 3, 4, 5, 7, 8, '3', '4', '1', '2'}

 

pop方法 

#随机删除,拿出来再删除,哈希算法,若为数字集合则从第一个元素删除

a = {1,2,3,4,5}

print(a.pop())

print(a.pop())

print(a.pop())

print(a.pop())

 

1

2

3

4

 

a = {'3', '4', '1', '2'}

print(a.pop())

print(a.pop())

print(a.pop())

print(a.pop())

 

4

1

2

3

 

remove方法 

#删除某一个元素

a = {1,2,3,4,5}

a.remove(3)

print(a)

 

{1, 2, 4, 5}

 

isdisjoint方法 

#判断是否有交集     a.isdisjoint(c)   a里面有没有c吗?

a = {1,2,3,4,5}

b = {6}

c = {6,3,7}

print(a.isdisjoint(b))

print(a.isdisjoint(c))

 

True

False

 

issubset方法 

#判断是否是子集     a.issubset(c)    a是c的子集吗

a = {6}

b = {1,2,3,4,5}

c = {6,3,7}

print(a.issubset(b))

print(a.issubset(c))

 

False

True

 

a = {1,2,3,4,5}

b = {6}

c = {1,2,3}

print(a.issuperset(b))

print(a.issuperset(c))

 

False

True

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值