[快学Python3]Sets(集合)


概述

set是Python的基本数据类型,它有可变集合(set()) 和不可变集合(frozenset)两种,在本节中,我们主要讲解set的使用方法。set和dict类似,其主要特性是:

  • 其存储的元素是无序的
  • 其存储的元素是不重复

下面我们看一下如何创建集合:

set1 = set(u"DeepTest DeepTest")

# 打印出来看看效果

print(set1)

# 上述语句将输出: {'t', 'D', 's', 'T', 'p', 'e'}

这里体现了set的关键特性:无序、不重复。

set方法

在Python中,通过add方法来给set新增新的元素,如果添加重复元素,会被自动过滤掉,即添加没任何效果。

  • add 新增一个元素到set中
  • remove 从set中删除指定的元素
  • clear 清空set集合
  • update 用于新增多个元素值,参数为list
  • issubset 用法 s1.issubset(s2), 判断s1中的每个元素是否都在s2中,即s1<-s2
  • issuperset 用法 s1.issuperset(s2), 判断s2中的每个元素是否都在s1中,即s1>=s2
  • union 并集,返回两个集合的并集
  • intersection 交集,返回两个集合的交集
  • difference 用法 s1.difference(s2), 返回s1中有s2中没的元素

下面看下代码示例:

# -*- coding:utf-8 -*-

__author__ = u'苦叶子'

if __name__ == "__main__":
    print(u"set操作示例")

    set_source = set([1, 1, 2, 3, 4, 5, 6, 7])
    set_demo = set([1, 1, 2, 3, 4, 5, 6, 7])

    print(u"原始数据: ", end="")
    print(set_demo)    
    
    # add方法,新增元素
    print(u"add后: ", end="")
    set_demo.add(9)
    set_demo.add(1)

    print(set_demo)    
    
    # remove 删除元素
    print(u"remove后: ", end="")
    set_demo.remove(9)
    
    print(set_demo)    
    
    # update 新增多个元素值
    list_demo = ["a", "b", "c"]
    set_demo.update(list_demo)

    print(u"update后: ", end="")
    print(set_demo)

运行效果如下:

set操作示例
原始数据: {1, 2, 3, 4, 5, 6, 7}
add后: {1, 2, 3, 4, 5, 6, 7, 9}
remove后: {1, 2, 3, 4, 5, 6, 7}
update后: {1, 2, 3, 4, 5, 6, 7, 'b', 'a', 'c'}

对于其他方法的使用,请自行练习掌握。

优质内容筛选与推荐>>
1、(转)Oracle E-Business Suite(R12.2) Troubleshooting
2、散列 处理冲突的三种方式
3、腾讯数据总监:运营人员必须掌握的APP基础数据分析体系(没有比这篇更系统全面的)
4、利用unicode字符rlo
5、轮换对称式


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号