一、集合会剔除字典内重复的数字

>>> num = {1,2,3,3,4,5,5,6}
>>> num
{1, 2, 3, 4, 5, 6}
>>> type(num)
<class 'set'>
>>>

---剔除了重复的数字,并且看num是个set类型(集合类型)

二、如何创建一个集合

1、一种是直接把一堆元素用花括号括起来

2、一种是使用set()工厂函数:set()函数可以传入一个列表,元组,还可以传入一个字符串

>>> set1 = set([1,2,3,3,4,5])
>>> set1
{1, 2, 3, 4, 5}
>>>

3、去掉列表内重复的元素:[1,2,3,4,5,5,3,1,0]

---利用for循环的普通代码:

>>> num1 = [1,2,3,4,5,5,3,1,0]
>>> temp = []
>>> for each in num1:
    if each not in temp:
        temp.append(each)

>>> temp
[1, 2, 3, 4, 5, 0]

---利用集合

>>> num1 = [1,2,3,4,5,5,3,1,0]
>>> num1 = set(num1)
>>> num1
{0, 1, 2, 3, 4, 5}   #set():转换成集合
>>> num1 = list(set(num1))
>>> num1
[0, 1, 2, 3, 4, 5]  #list:把集合继续转换成列表
>>>

三、如何访问集合中的值

1、可以使用for把集合中的数据一个个读取出来

2、可以通过in 和not in判断一个元素是否在集合中已经存在

>>> 1 in num1
True
>>> '1' in num1
False
>>>

3、增加,删除集合内的数据

>>> num2 = {0, 1, 2, 3, 4, 5}
>>> num2.add(6)
>>> num2
{0, 1, 2, 3, 4, 5, 6}
>>> num2.remove(3)
>>> num2
{0, 1, 2, 4, 5, 6}
>>>

4、frozen:冰冻的,冻结的(保证集合是不变的)

>>> num3 = frozenset([1,2,3,4,5])
>>> num3.add(0)
Traceback (most recent call last):
  File "<pyshell#47>", line 1, in <module>
    num3.add(0)
AttributeError: 'frozenset' object has no attribute 'add'
>>>

四、集合的唯一作用是什么呢

1、集合几乎所有的作用就是确保里面包含的元素的唯一性

五、请问如何确定一个集合里面有多少个元素

>>> num4 = set([1,2,3,4,5])
>>> len(num4)   #采用len()函数
5
>>>

六、集合是无序的,举例证明:

>>> num4 = set([1,2,3,4,5])
>>> num4[0]
Traceback (most recent call last):
  File "<pyshell#61>", line 1, in <module>
    num4[0]
TypeError: 'set' object does not support indexing   -->  'set'对象不支持索引
>>>

【python027--集合】的更多相关文章

  1. 集合:在我的世界里,你就是唯一 - 零基础入门学习Python027

    集合:在我的世界里,你就是唯一 让编程改变世界 Change the world by program 好,上课之前小甲鱼考考大家还记不记得上节课的内容?上节课我们讲Python中的"字典& ...

  2. java基础集合经典训练题

    第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...

  3. .Net多线程编程—并发集合

    并发集合 1 为什么使用并发集合? 原因主要有以下几点: System.Collections和System.Collections.Generic名称空间中所提供的经典列表.集合和数组都不是线程安全 ...

  4. 一起学 Java(三) 集合框架、数据结构、泛型

    一.Java 集合框架 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个 ...

  5. 编写高质量代码:改善Java程序的151个建议(第5章:数组和集合___建议75~78)

    建议75:集合中的元素必须做到compareTo和equals同步 实现了Comparable接口的元素就可以排序,compareTo方法是Comparable接口要求必须实现的,它与equals方法 ...

  6. java基础_集合List与Set接口

    List接口继承了Collection的方法  当然也有自己特有的方法向指定位置添加元素   add(索引,添加的元素); 移除指定索引的元素   remove(索引) 修改指定索引的元素   set ...

  7. Java基础Collection集合

    1.Collection是所有集合的父类,在JDK1.5之后又加入了Iterable超级类(可以不用了解) 2.学习集合从Collection开始,所有集合都继承了他的方法 集合结构如图:

  8. 轻量级“集合”迭代器-Generator

    Generator是PHP 5.5加入的新语言特性.但是,它似乎并没有被很多PHP开发者广泛采用.因此,在我们了解PHP 7对Generator的改进之前,我们先通过一个简单却显而易见的例子来了解下G ...

  9. Asp.net MVC 传递数据 从前台到后台,包括单个对象,多个对象,集合

    今天为大家分享下 Asp.net MVC 将数据从前台传递到后台的几种方式. 环境:VS2013,MVC5.0框架 1.基本数据类型 我们常见有传递 int, string, bool, double ...

  10. 这些.NET开源项目你知道吗?.NET平台开源文档与报表处理组件集合(三)

    在前2篇文章这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧 和这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧!(第二辑)中,大伙热情高涨.再次拿出自己的私货,在.NET平台 ...

随机推荐

  1. sqli-labs(四)

    第七关: 输入?id=1 页面显示如下,可以看出这关大概是锻炼利用sql来写入一句话木马. 这里说我下我的探测流程(主要是为了知道后台的sql是怎样拼凑的): 输入?id=1' 报错  说明后台是用的 ...

  2. maven pom文件报错:Multiple annotations found at this line 解决方案(转)

    研究maven多模块项目时,因为家里和公司不能同时开发,所以把家里搭建好的项目复制到公司继续研究, 当时家里的电脑搭建好项目之后是没问题的,但是复制到公司的eclipse上之后就看到pom文件出现下面 ...

  3. HDU 4686 Arc of Dream(矩阵)

    Arc of Dream [题目链接]Arc of Dream [题目类型]矩阵 &题解: 这题你做的复杂与否很大取决于你建的矩阵是什么样的,膜一发kuangbin大神的矩阵: 还有几个坑点: ...

  4. Springboot杂七杂八

    1 加载配置文件 private static ResourceBundle resb = ResourceBundle.getBundle("serverInfo"); 然后在r ...

  5. Discuz! 安装模板、插件提示“对不起,您安装的不是正版应用...

    iscuz 社区在更新到2.0以上后,增加了对插件的版本检测,在安装时,可能会出现:“对不起,您安装的不是正版应用,安装程序无法继续执行”的提示,要解决这个其实挺容易的,找到以下文件: /source ...

  6. 变量part2

    一 变量值具有三个特征:  1. id:变量值的唯一编号,内存地址不同id则不同  2. type:类型  3. value(值) #name='xia' #print(id(name)) #age= ...

  7. SQl server更新某阶段的匹配关系。

    DECLARE @count INTEGERDECLARE @id INTEGERDECLARE @subjectID INTEGERSET @count=1SET @id =11894SET @su ...

  8. io 流概念

    io 流概念 对输入输出抽象的封装

  9. pip使用简要说明

    一.pip常用命令 安装指定包 pip install SomePackage #最新版本 安装指定包 pip install SomePackage==1.0.4 #指定版本 安装指定包 pip i ...

  10. flask模板应用-空白控制

    模板应用实践 空白控制 在实际输出的HTML文件中,模板中的jinja2语句.表达式和注释会保留移除后的空行. 例如下面的代码: {% set user.age = 23 %} {% if urer. ...