Python中的set

set_lst = [

  ('集合容器不可哈希',),

  ('集合中的元素必须可哈希',),

  ('集合是无序的',),

  ('集合自动去重',),

  ('增',),

  ('删',),

  ('查',),

  ('集合运算',),

  ('练习',),

]

 

集合容器不可哈希

  >>>hash(set())

  TypeError: unhashable type: 'set'

集合中的元素必须可哈希

  >>>num_set = {1, 2, 3, [4]}

  TypeError: unhashable type: 'list'

集合是无序的

  >>>num_set = {1, 2, 3, 4}

  >>>num_set[0]

  TypeError: 'set' object does not support indexing

集合自动去重

  >>>num_set = {1, 1}

  >>>num_set

  {1}

  >>>num_set = {1, 2}

  >>>num_set.add(3)

  >>>num_set

  {1, 2, 3}

  >>>num_set.update([4, 5])

  >>>num_set

  {1, 2, 3, 4, 5}

  set.pop()理论上是移除并返回任意的集合元素

  集合是无序的,所以要删除某一元素时,用remove()方法会更好一些

  

  (PS: Python 3.6.2)

  

  >>>num_set = {1, 2, 3, 4, '5', 6}

  >>>num_set.pop()

  1

  >>>num_set.remove('5')

  >>>num_set

  {2, 3, 4, 6}

  >>>num_set.clear()

  >>>num_set

  set()

  >>>del num_set

  >>>num_set

  NameError: name 'num_set' is not defined

  >>>num_set = {1, 2}

  >>>for i in num_set:

  ...  i

  ...

  1

  2

集合运算

  >>>set_1 = {1, 2, 3, 4}

  >>>set_2 = {4, 5, 6, 7}

  交集

    >>>set_1 & set_2

    {4}

  并集

    >>>set_1 | set_2

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

  反交集

    >>>set_1 ^ set_2

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

  差集

    >>>set_1 - set_2

    {1, 2, 3}

  子集与超集

    >>>set_1 < set_2

    False

    >>>set_1 > set_2

    False

 

练习

  运用集合的知识为列表去重

    >>>lst = [1, 1, 2, 2, 3, 4]

    >>>lst = list(set(lst))

    >>>lst

    [1, 2, 3, 4]

      

    

转载于:https://www.cnblogs.com/HopenZhang/p/9975348.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值