10.1、集合:

1、集合元素用大括号括起来,用逗号分割每个元素

2、集合的特点:

(1)集合元素的数据类型只能是不可变数据类型,"列表"、"字典"、"集合"、不能作为集合元素

(2)集合元素是不能重复的,如果有重复也会只保留一个

(3)集合是可变数据类型(可以增加,删除元素,无法修改元素)

(4)集合元素是无序排列的

(5)集合元素可以使用for循环进行遍历

10.2、集合的用法:

1、设置集合:

s=set('hello')

print(s)

s=set(['alex','alex','sb'])

print(s)

s={1,2,3,4,5,6}

2、往集合中添加元素:

s={1,2,3,4,5,6}

s.add('s')

s.add('3')

s.add(3)

print(s)

3、清空集合:

s={1,2,3,4,5,6}

s.clear()

print(s)

4、随机删除集合中的元素并返回删除的元素:

s={'lc',1,2,3,4,5,6}

v=s.pop()

print(v)

5、指定删除集合元素:

s={'lc',1,2,3,4,5,6}

s.remove('sb')

s.remove('hello')

#删除元素不存在会报错

s.discard('ch')

#删除元素不存在不会报错

print(s)

6、集合之间的运算:

#例:学校里的学生报读学校开设的两门课程

python_l = ['lc', 'lc1', 'lc1', 'lc']

linux_l = ['lc', 'lc1', 'lc2']

p_s = set(python_l)

l_s = set(linux_l)

print(p_s, l_s)

(1)求交集:

print("交集", p_s.intersection(l_s))

print("交集", p_s & l_s)

#在学校里两门课程都报的人

(2)求并集:

print("并集", p_s.union(l_s))

print("并集", p_s | l_s)

# 在学校里总共有多少人

(3)求差集:

print('差集', p_s - l_s)

print("差集", p_s.difference(l_s))

# 在学校里只报当前课程的人

print('差集', l_s - p_s)

print("差集", l_s.difference(p_s))

# 在学校里只报当前课程的人

(4)求交叉补集:

rint('交叉补集', p_s ^ l_s)

print('交叉补集', p_s.symmetric_difference(l_s))

#在学校了只报了一门课的人

7、判断子集和父集:

s1={1,2}

s2={1,2,3}

print(s1.issubset(s2))

#s1是s2的子集,返回True

print(s2.issubset(s1))

#s2不是是s1的子集,返回False

print(s2.issuperset(s1))

#s2是s1的父集,返回True

8、更新整个集合:

s1 = {1, 2}

s2 = {1, 2, 3}

s1.update(s2)

#更新多个值

print(s1)

9、不可变集合:

s = frozenset('hello')

print(s)

10、在不在乎列表元素排序的前提下使用set对列表进行去重:

names = ['lc', 'lc', 'lc1']

names = list(set(names))

print(names)

10、基本数据类型(set)的更多相关文章

  1. JavaScript学习10 JS数据类型、强制类型转换和对象属性

    JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...

  2. Java知多少(10)数据类型及变量

    Java 是一种“强类型”的语言,声明变量时必须指明数据类型.变量(variable)占据一定的内存空间.不同类型的变量占据不同的大小. Java中共有8种基本数据类型,包括4 种整型.2 种浮点型. ...

  3. 10 Python 数据类型—集合

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

  4. Python基础部分:10、数据类型的内置方法和字符编码

    目录 一.数据类型内置方法 1.字典dict内置方法 1.1.类型转换 2.字典必须要掌握的方法 2.1.取值方式 2.2.修改内部数据值 2.3.删除数据 2.4.统计字典中键值对个数 2.5.字典 ...

  5. SQL数据类型介绍

    在计算机中数据有两种特征:类型和长度.所谓数据类型就是以数据的表现方式和存储方式来划分的数据的种类.    在SQL Server 中每个变量.参数.表达式等都有数据类型.系统提供的数据类型分为几大类 ...

  6. JavaSE复习日记 : 八种基本数据类型

    /* * 基本数据类型 * * Java里的8种基本数据类型: * byte --- 1 byte = 8 bit; * short --- 2 byte = 16 bit; * int --- 4 ...

  7. java基础知识—变量、数据类型和运算符

    1.变量:存储数据的一个基本单元.2.变量的声明和赋值: 1)声明并赋值;数据类型 变量名=值 例如:int prince=10; 2) 声明.赋值分为两步: 数据类型 变量名: 例如:int=pri ...

  8. 第二章:python基础,数据类型

    """第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...

  9. 基本数据类型、包装类、String之间的转换

    package 包装类; /** *8种基本数据类型对应一个类,此类即为包装类 * 基本数据类型.包装类.String之间的转换 * 1.基本数据类型转成包装类(装箱): * ->通过构造器 : ...

  10. Access 数据库的数据类型

    今天开发数据库通用组件时,做C#数据库类型与Access数据库类型的相互转化时,发现Access中“text”类型的最大长度为255,当长度超过255时,需改用“Memo”类型,但需要注意备注(Mem ...

随机推荐

  1. [bug] java.sql.SQLException: Unknown initial character set index '255' received from server. Initial cl...

    参考 https://www.jianshu.com/p/d86de6463cbd

  2. [刷题] 416 Partition Equal Subset Sum

    要求 非空数组的所有数字都是正整数,是否可以将这个数组的元素分成两部分,使得每部分的数字和相等 最多200个数字,每个数字最大为100 示例 [1,5,11,5],返回 true [1,2,3,5], ...

  3. ocalhost kernel: [244840.301449] nf_conntrack: nf_conntrack: table full, dropping packet

    nf_conntrack: table full, dropping packet. 终结篇   "连接跟踪表已满,开始丢包"!相信不少用iptables的同学都会见过这个错误信息 ...

  4. 1080p就是1920*1080,2k就是2560*1440,4k就是3840*2160

    1080p就是1920*1080,2k就是2560*1440,4k就是3840*2160 作者:容易视听链接:https://www.zhihu.com/question/24205632/answe ...

  5. commit信息修改

    场景:向社区提交commit信息,code reviewer给你回复说,请添加TrivialFix并且完善commit信息.好吧,虽然这对代码的运行无关紧要,但是对于日后的代码管理是很有必要的. 解决 ...

  6. Linux进阶之综合练习

    综合练习: 1.准备2台centos7系统的服务器,远程互相免密登录,以下所有题目过程中开启防火墙 2.给1号机和2号机使用光盘搭建本地yum源(永久生效) 3.给服务器1添加2块硬盘,1块1GB,1 ...

  7. 5.1-5 uname、hostname、dmesg、stat、du

    5.1 uname:显示系统信息     uname命令用于显示系统相关信息,比如内核版本号.硬件架构等. -a    显示系统所有相关信息 -v    显示内核版本 -m    显示计算机硬件架构 ...

  8. 9.1 ps:查看进程

    ps命令 用于列出执行ps命令的那个时刻的进程快照,就像用手机给进程照了一张照片.如果想要动态地显示进程的信息,就需要使用top命令,该命令类似于把手机切换成录像模式.因为ps命令的功能实在是太多了, ...

  9. DDD兴起的原因以及与微服务的关系

    DDD为什么能火起来? 我们先不讨论DDD的定义, 先梳理一下DDD火起来的背景, 根据我学习的套路, 永远是为什么为先,再是解决什么问题,是什么东西, 最后如何使用.我们都知道这些年随着设备以及技术 ...

  10. Python单元测试简介及Django中的单元测试

    Python单元测试简介及Django中的单元测试 单元测试负责对最小的软件设计单元(模块)进行验证,unittest是Python自带的单元测试框架. 单元测试与功能测试都是日常开发中必不可少的部分 ...