1. 前言

python中的集合和数学里的类似也是用于存放不重复的元素,它有可变集合(set)和不可变集合(feozenset)两种,集合的所有元素都放在一对大括号"{}"里(列表是[]、元组是()、字典是{}),集合最好的应用就是去重,因为集合中的每一个元素都是唯一的。

2. 集合的创建

2.1.直接使用"{}"创建

格式:集合名={element  1,element  2,......,element  n}

在创建集合时,如果输入了重复的元素,python会自动只保留一个。

举例

set1={1,2,3,4,5,6,1}
print(set1)

2.2.用set()函数创建

将列表、元组等其他可迭代对象转换为集合

格式:集合名=set(iteration)

iteration表示要转换为集合的可迭代对象

举例

lst=[1,2,3,4,5,6,1]
set1=set(lst)
print(set1)

注意:在创建空集合时,只能使用set()实现,而不能使用大括号"{}"实现,在python里,直接使用一对大括号"{}"表示创建一个空字典

3. 修改集合中的元素

3.1. 向集合添加元素

add()方法

格式:集合名.add(element)

注意:element表示要添加的元素内容,只能是字符串、数字、布尔类型等,不能是列表、元组等可迭代对象。

举例

set1={1,2,3,4,5}
print(set1) set1.add(6)
print(set1)

update()方法

update方法也可以添加元素,且参数可以是列表,元组,字典等。

格式:集合名.update()

举例

set2 = set(("Google", "Runoob", "Taobao"))
set2.update({1,3})
print(set2)
#{1, 3, 'Google', 'Taobao', 'Runoob'}
set2.update([1,4],[5,6])
print(set2)
#{1, 3, 4, 5, 6, 'Google', 'Taobao', 'Runoob'}

3.3.从集合中删除元素

使用del命令可以删除整个集合;

使用pop()删除第一个元素;

使用remove()可以删除指定一个元素;

使用clear()可以使删除集合中所有元素,使其变为空集合;

使用discard()移除集合中的元素,且如果元素不存在,不会发生错误。

del命令举例

set1={1,2,3,4,5}
del set1
print(set1)

pop()/remove()举例

set1={1,2,3,4,5}
set1.pop()
print(set1) set1.remove(4)
print(set1)

clear()举例

set1={1,2,3,4,5}
set1.clear()
print(set1)

discard()举例

set1={1,2,3,4,5}
set1.discard(7)
print(set1)

4. 遍历集合的元素

# 遍历集合

for s in set1:
print(2)

5. 判断是否在集合中

s in set1

判断元素 x 是否在集合 s 中,存在返回 True,不存在返回 False。

6. 计算集合元素个数

len(set1)

7. 集合的交集、并集和差集运算

4.1交集:&

4.2并集:|

4.3差集:-

举例

set1={1,2,3,4,5}
set2={3,4,5,6,7} print(set1&set2) print(set1|set2) print(set1-set2)

8. 集合内置方法完整列表

方法

描述

add()

为集合添加元素

clear()

移除集合中的所有元素

copy()

拷贝一个集合

difference()

返回多个集合的差集

difference_update()

移除集合中的元素,该元素在指定的集合也存在。

discard()

删除集合中指定的元素

intersection()

返回集合的交集

intersection_update()

返回集合的交集。

isdisjoint()

判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。

issubset()

判断指定集合是否为该方法参数集合的子集。

issuperset()

判断该方法的参数集合是否为指定集合的子集

pop()

随机移除元素

remove()

移除指定元素

symmetric_difference()

返回两个集合中不重复的元素集合。

symmetric_difference_update()

移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。

union()

返回两个集合的并集

update()

给集合添加元素

Python-集合的基本操作(set)的更多相关文章

  1. Python集合的基本操作

    #-*coding:utf-8 -* list =set([2,3,4]) list2 =set([5,3,7]) #交集 #print (list.intersection(list2)) #并集 ...

  2. Python之路 day2 集合的基本操作

    #!/usr/bin/env python # -*- coding:utf-8 -*- #Author:ersa ''' #集合是无序的 集合的关系测试, 增加,删除,查找等操作 ''' #列表去重 ...

  3. <Python基础>集合的基本操作

    #小知识点:返回对象的内存地址 i,j = 1,2 print(id(i),id(j)) #集合的基本操作, #相当于没有键值对的字典,里面的元素是无序且不重复的 #一般写法 s = set({1,2 ...

  4. Python - 集合 - 第十一天

    Python 集合 集合(set)是一个无序的不重复元素序列. 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建 ...

  5. Python集合详解

    集合介绍: 集合(set)是一个无序的不重复元素序列.可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典 ...

  6. Python集合&字典

    Python集合&字典 @ 目录 字典 字典的几种定义方式 第一种 第二种 第三种 字典的一些基本操作 通过key得到value 增加字典键值对 删除字典键值对 格式化操作 清空字典 复制字典 ...

  7. Python 集合set添加删除、交集、并集、集合操作符号

    在Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 1. ...

  8. [转]python集合set

    Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 来源网 ...

  9. python集合使用范例的代码

    在代码过程中中,将代码过程中比较好的代码段珍藏起来,如下的代码是关于python集合使用范例的代码,希望能对大伙有用. # sets are unordered collections of uniq ...

  10. python集合与字典的用法

    python集合与字典的用法 集合: 1.增加  add 2.删除   •del 删除集合 •discard(常用)删除集合中的元素  #删除一个不存在的元素不会报错 •remove 删除一个不存在的 ...

随机推荐

  1. 接口自动化复习第四天利用正则和faker提取替换变量值

    在做接口自动化测试的时候,我们经常会遇到,有些字段利用随机生成数据就行了,不需要自己去构造测试数据.今天我就是要python中的第三方库faker来构造随机数,其次使用正则表达式来提取变量. 首先在接 ...

  2. excel如何自动获取本周工作日的日期显示作为标题(周一至周五)

    一.背景: 每周发周报的标题格式为:本周一到本周五的日期内容,如下:但是每隔一周发送的时候需要改一下周报标题里面的日期,比较麻烦目前的需求是通过函数自动化生成,根据当前的日期去定位出本周一的日期以及本 ...

  3. pmp考试巩固知识点

    1.冲刺评审会是需要相关的干系人参加的,在冲刺评审会上干系人可以审查并澄清角色.责任和管理模式2.采购中的争议,往往找合同和SOW,SOW是对需要采购的详细范围的描述,与供应商在可交付成果方面有争议时 ...

  4. docker 安装 ElasticSearch 和 Kibana 及ik 中文分词器

    本文为博主原创,未经允许不得转载: 1. 使用 docker 下载 elasticsearch  7.6.1 docker pull elasticsearch:7.6.1 2. 启动 elastic ...

  5. http连接池配置及spring boot restTemplate配置http连接池

    本文为博主原创,转载请注明出处: 项目中存在第三方系统之间的服务调用通信,且会进行频繁调用,由于很早之前实现的调用方式为每调用一次外部接口,就需要新建一个HttpClient 对象.由于频繁调用,会存 ...

  6. 使用React简短代码动态生成栅格布局

    使用React简短代码动态生成栅格布局 作为 TerminalMACS 的一个子进程模块 - React Web管理端,使用Ant Design Pro作为框架. 本文应用到的知识 1.样式文件les ...

  7. FIFO设计

    first in first out,先进先出 fifo是基于RAM进行设计的 双端口RAM设计(16*8) 如果大的RAM可以调用IP RAM的关键参数:深度和宽度 module dual_ram ...

  8. PageHelper 分页不起作用

    将 reasonable 设置为 false   .

  9. JavaScript - input 上传图片 并展示 (食用简单)

    <!DOCTYPE html> <html lang="en">   <head>     <meta charset="UTF ...

  10. linux-网络状态-netstat