简要

有一个在数学基本概念 - 设定的时间上高中太。大集合IT的角色?强制高考,你说?

关于收藏,维基百科介绍:

是基本的数学概念的集合,它是集理论的研究对象,是指总和的事情有一定的属性(在最原始的朴素集合论集合论的定义──集合中是“一堆东西。“。)事物的集合(“东西”),称为元素。如果是这样,x是集合A的元素,表示为A的x∈。

在Python,收集被分为两类:

  • 组:可变集合
  • frozen组:不可变集合

集可以在原位进行修改,或者是可变的,它可以被unhashable(未散列)所述。

frozenset,顾名思义,是一个“冻结”收集不能在原地进行修改,它是可哈希(可哈希)的。

| 版权所有:一去,二,三里,允许不得未经博主转载。

set

在Python,由一组内置型集合的定义。

要创建一个集合,你需要的所有项目(元素)()括号()用逗号分隔。

组可具有任何数量的元素,它们可以是不同类型的(例如:数量,元组,字符串等。)。然而,不存在一组可变元件(例如:一个列表,集合或字典)。

创建一个空的一套专用。在Python,空的大括号()创建一个空的字典。要创建一个集合不是任何元素,使用set()函数(不包含任何参数)。

特征集

孔子说:“温故而知新,可以为师。“
- “论语”

回顾数学知识,收集具有以下特点:

  • 病症:各元素的采集状态是相同的,之间的元素是无序的。
    的顺序关系的集合可以被定义后,这些元件之间所限定的顺序关系可以在顺序关系进行排序。但在功能集本身,并不一定是元素的顺序条款。
  • 互惠:一个集合,任何两个元件被认为是不同的,使得每个元素只能出现一次。
    有时候需要的情况多次出现同一元素的特征,可以用多套,其中元素允许多次出现。
  • 不确定性:给定一组给定的属于或不属于或集合中的任何元素,它必须是一个,它不允许模糊的情况出现。

当然,Python中还包括一组的这些特点:

注意: 由于集合是无序的,所以指数没有任何意义。换句话说,你不能使用索引或片段中的存取或改变集合元素。

Set操作

它也可以一组数学操作之间设置的(例如:集,交集,等。),或使用相应的方法来实现操作者。

考虑A,两套B,下面的操作。

子集

子集,所述部分作为一组一组的,它也被称为部分集。

操作者使用的操作的子集上执行,以相同的方式,该方法还可以用于issubset()来完成。

联盟

和一组这些分集集合的是该组中的一组中的所有元素的,而不包括其他元件构成。

和使用该组的运营商相同的方式执行操作,所述方法还可以用于联合()来完成。

路口

两组A和既属于包含所有元素A和B的组的交点B属于无其它元素。

使用操作者执行一个交集操作,以相同的方式,该方法还可以用于交叉点()来完成。

差集

差集A和B是集合属于不属于构成B中的所有元件的

使用执行设置差操作的操作,以相同的方式,该方法还可以使用差()来完成。

对称差

两个对称的差集是属于只,而不是另一组由一组中的元素的一部分。

使用执行设置差操作的操作,以相同的方式,该方法还可以使用的symmetric_difference()来完成。

更改集

虽然目前还没有一组可变元素,但集合本身是可变的。换句话说,你可以添加或删除元素,其。

可以添加()方法增加一个单个元件的,使用加入了多个元件,更新(的更新()方法)可以使用元组列表中,作为一组串,或其他参数。

在所有情况下,该元素将不再重复。

从集合中删除元素

可以使用的丢弃()和删除()方法去除一组特定元素的。

这两者之间的唯一区别是:如果指定元素不集合中存在,则使用丢弃()不变; 然而,在这种情况下,删除()抛出KeyError异常。

同样,你可以使用pop()方法删除并返回一个项目。

您还可以使用所有元素清晰()删除集合。

注意: 集合是无序的,它是不可能的,以确定哪些元素将成为流行,完全随机的。

收集方法

老规矩,使用DIR()查看方法列表:

你可以看到,下面的方法:

方法 描述
加() 将元素添加到集合
明确的() 删除所有元素的集合
副本() 返回一组的浅拷贝
区别 () 设置为一组新的回报两个或两个以上多样性之间的区别
difference_update() 删除所有收集的其他元素的起订
discard () 删除数据收集元件(如果该元素不存在,无动作)
交叉点() 两套为新的设定回报的交集
intersection_update() 随着它们的交集和其他更新此集合
isdisjoint() 如果两套有一个空的交集,返回True
issubset() 如果另一个集合包含此集合,返回true
issuperset() 如果该集合包含另一个集合,返回true
流行() 删除并返回元素的任意集合(如果集合为空,将导致KeyError异常)
去掉 () 在集合中删除元素(如果该元素不存在,会导致KeyError异常)
symmetric_difference() 两个集合的对称差为一组新的回报
symmetric_difference_update() 另用这一套自己的对称差被更新
工会() 收集并设置为一组新的回报
更新() 和其他同他们的工会来更新这个集合

一些这样的方法已经在上面的例子中被使用,如果不使用该方法,可以使用帮助()函数,详细描述使用了见。

设置的内置功能

下列功能通常是专为收藏,执行不同任务。

功能 描述
所有() 如果集合中的所有元素都是真(或设置为空),则返回真。
任何 () 如果集合中的所有元素为True,则返回true; 如果集合为空,假,则返回。
枚举() 它返回一个包含指数和集合中的所有元素的值(对)的枚举器对象。
LEN() 返回所述一组(元素的数量)的长度
MAX() 返回集合中最大的项目
分钟() 返回集合中最小的项目
排序() 它返回从元素的集合一个新的排序列表(没有下令集合本身)
SUM() 回到集合中的所有元素

不可变集合

frozenset是具有一组特征的新类,但一旦分配,就不能元件内部改变。这是非常相似,元组:元素是不可变列表,frozenset是不可变的集合。

Unhashable被设置,它不能被用来作为字典密钥; frozensets是可哈希和可以用作一个字典的键。

您可以使用该功能frozenset()创建frozenset。

frozenset还提供了一些柱方法,以及该组中的像。

由于frozenset是不可改变的,所以没有办法来添加或删除元素。


文/信息/ 72654921

本文链接:Python 集合

您可能也会喜欢

友情链接:

心经唱诵 大悲咒注音 经文