美文网首页
七、 python中的数据类型——集合

七、 python中的数据类型——集合

作者: Davidham3 | 来源:发表于2016-01-24 19:32 被阅读253次

集合(set)

集合与字典类似,但里面的元素不是键值对了。它是一个无序的,不同元素组成的集合。里面所有的元素都互不重复。

1. 创建集合

集合不能直接定义,只能通过强制类型转换间接定义。比如

>>> a = [1, 2, 3, 2]  #定义列表a
>>> b = set(a)  #将a转换为列表后赋给b
>>> print(b)  #打印b
{1, 2, 3}
>>> print(type(b))  #打印b的类型
<class 'set'>

我们可以发现,集合与字典都是用花括号括起来的,元素与元素间用逗号隔开,不同的是,集合内的元素都是单一的,不是键值对。
它的特点是不存在重复的元素。因此有些时候可以用其来删掉重复的元素。

2. 添加元素set.add(value)

集合自带了add方法,可以通过此方法向集合中加入元素

>>> a = set([1, 2, 3, 4, 3])  #创建集合a
>>> a.add(5)  #向集合a中加入5
>>> print(a)
{1, 2, 3, 4, 5}
>>> a.add(3)  #向集合a中加入3
>>> print(a)
{1, 2, 3, 4, 5}

我们可以看到,当要加入的元素已经在集合中存在后,使用add加入后是不会有变化的。

3. 删除元素set.remove(value)

集合自带了remove方法,用来删除元素

>>> a = set([1, 2, 3, 4, 3])  #创建集合a
>>> print(a)  #打印集合a
{1, 2, 3, 4}
>>> a.remove(3)  #删除集合a中的3
>>> print(a)  #打印集合a
{1, 2, 4}

4. 集合的操作

集合与数学上的集合一样,可以求两个集合的交集,并集,差集,对称差集

  1. 交集&
    使用&可以求得两个集合的交集
>>> a = set([1, 2, 3])  #创建集合a
>>> b = set([1, 2, 4])  #创建集合b
>>> print(a & b)  #打印a与b的交集
{1, 2}
  1. 并集|
    使用|可以求得两个集合的并集
>>> a = set([1, 2, 3])  #创建集合a
>>> b = set([1, 2, 4])  #创建集合b
>>> print(a | b)  #打印a与b的并集
{1, 2, 3, 4}
  1. 差集-
    使用-可以求得两个集合的差集,a-b即为,求属于a,不属于b的元素
>>> a = set([1, 2, 3])  #创建集合a
>>> b = set([1, 2, 4])  #创建集合b
>>> print(a - b)  #打印a与b的差集
{3}
>>> print(b - a)  #打印b与a的差集
{4}
  1. 对称差集^
    可以使用^求两个集合的对称差集。
    对称差集是集合a与b中所有不属于A∩B的元素的集合,即在a,b中出现,但不同时出现的元素的集合。
>>> a = set([1, 2, 3])  #创建集合a
>>> b = set([1, 2, 4])  #创建集合b
>>> print(a ^ b)  #打印a与b的对称差集
{3, 4}

5. 其他方法

  1. 查看集合内元素的个数len()
    函数len()对集合也适用。
>>> a = set([1, 2, 3, 4, 3])  #创建集合a
>>> print(len(a))  #打印集合a内元素的个数
4
  1. 复制一个集合set.copy()
    集合自带一个copy()方法,与此前的列表复制的方法一样
>>> a = set([1, 2, 3, 4, 3])  #创建集合a
>>> b = a.copy()  #将a复制后赋给b
>>> print(a)  #打印集合a
{1, 2, 3, 4}
>>> print(b)  #打印集合b
{1, 2, 3, 4}
  1. 清除集合内所有的元素set.clear()
    与此前列表和字典的clear相同
>>> a = set([1, 2, 3, 4, 3])  #创建集合a
>>> print(a)  #打印集合a
{1, 2, 3, 4}
>>> a.clear()  #清除a中所有的元素
>>> print(a)  #打印集合a
set()

关于更多集合的信息,可以使用help(set)查看帮助信息。

相关文章

  • python的组合数据类型

    python中的数据类型 Python的组合数据类型有四种,分别是:列表(list)、元组(tuple)、集合(s...

  • 七、 python中的数据类型——集合

    集合(set) 集合与字典类似,但里面的元素不是键值对了。它是一个无序的,不同元素组成的集合。里面所有的元素都互不...

  • Python 集合set()添加删除、交集、并集、集合操作详解

    1、在Python中set是基本数据类型的一种集合类型,它有可变集合(set())和不可变集合(frozenset...

  • Python的基本数据类型——List

    列表(list)是python中重要的数据类型,有点类似其它语言的数组,python中的列表可以是任意对象的集合 ...

  • python基础知识

    1,Python中的数据类型有哪些 Python基本数据类型一般分为:数字、字符串、列表、元组、字典、集合这六种基...

  • Python学习打call第十一天:集合

    今天学习一种新的数据类型,集合,集合也是Python很常用到的基本数据类型~ 1.什么是集合 集合(set)是Py...

  • Python: set实例透析

    Python基础文章集合请移步。 Python里的 set数据类型 set是无序unique值的集合,常用来去重,...

  • Python入门

    一、数据类型 在Python中,常见的数据类型有数、字符串、列表、元祖、集合以及字典等。 数:就是数学上的数字,比...

  • day2-03python的常用数据类型

    python中的常用数据类型有: 整型、浮点型、布尔、字符串、列表、字典、元组、集合、函数等 1常见数据类型的字面...

  • Python中支持的数据类型有哪些?

    Python支持哪些数据类型呢?Python基本数据类型分为数字、字符串、列表、元组、字典、集合等六种基本数据类型...

网友评论

      本文标题:七、 python中的数据类型——集合

      本文链接:https://www.haomeiwen.com/subject/fqwrkttx.html