day3 集合

集和

  集合是一个无序的,不重复的数据组合,它的主要作用如下:

  • 去重,把一个列表变成集合,就自动去重了
  • 关系测试,测试两组数据之前的交集、差集、并集等关系

set创建集合

>>> s = set([3,5,9,10])     #创建一个数值集合
>>> t = set("Hello")    #创建一个唯一字符的集合
>>> s
{9, 10, 3, 5}
>>> t
{‘e‘, ‘H‘, ‘l‘, ‘o‘}    #集和自动去重
>>> type(s),type(t)
(<class ‘set‘>, <class ‘set‘>)    #集和类型
>>> len(s)    #集和长度
4
>>> s==t
False
>>> s1=s
>>> s1
{9, 10, 3, 5}
>>> s1==s
True

由于集合本身是无序的,所以不能为集合创建索引或切片操作,只能循环遍历或使用in、not in来访问或判断集合元素。

>>> t
{‘e‘, ‘H‘, ‘l‘, ‘o‘}
>>> "e" in t
True
>>> "a" in t
False
>>> "a " not in t
True
>>> for i in t:

    print(i)

e
H
l
o

可使用以下内建方法来更新:

s.add()
s.update()
s.remove()

注意只有可变集合(set创建的集和,frozense创建的集和是不可变集和)才能更新:

>>> s
{9, 10, 3, 5}
>>> t
{‘e‘, ‘H‘, ‘l‘, ‘o‘}
>>> s.add(1)    #添加一个元素
>>> s
{9, 10, 3, 5, 1}
>>> s.update([0,2,4])    #添加多个元素
>>> s
{0, 1, 2, 3, 4, 5, 9, 10}
>>> t.add(‘python‘)
>>> t
{‘e‘, ‘H‘, ‘l‘, ‘python‘, ‘o‘}
>>> t.update(‘python‘)    #添加一个字符会拆成多个
>>> t
{‘e‘, ‘y‘, ‘n‘, ‘h‘, ‘t‘, ‘p‘, ‘o‘, ‘python‘, ‘H‘, ‘l‘}
>>> t.remove(‘python‘)    #删除一个元素
>>> t
{‘e‘, ‘y‘, ‘n‘, ‘h‘, ‘t‘, ‘p‘, ‘o‘, ‘H‘, ‘l‘}

关系

x in s
测试 x 是否是 s 的成员  

x not in s
测试 x 是否不是 s 的成员  

s.issubset(t)
s <= t
测试是否 s 中的每一个元素都在 t 中  

s.issuperset(t)
s >= t
测试是否 t 中的每一个元素都在 s 中  

s.union(t)
s | t  # t 和 s的并集
返回一个新的 set 包含 s 和 t 中的每一个元素  

s.intersection(t)
s & t  # t 和 s的交集
返回一个新的 set 包含 s 和 t 中的公共元素  

s.difference(t)
s - t  # 求差集(项在s中,但不在t中)
返回一个新的 set 包含 s 中有但是 t 中没有的元素  

s.symmetric_difference(t)
s ^ t  # 对称差集(项在t或s中,但不会同时出现在二者中)
返回一个新的 set 包含 s 和 t 中不重复的元素  
时间: 2024-08-10 19:15:35

day3 集合的相关文章

day3 集合set()实例分析

    集合,我们在高中的时候专门学习过集合,并集,交集,差集等,下面来看一下集合的定义,如下: 集合(简称集)是数学中一个基本概念,它是集合论的研究对象,集合论的基本理论直到19世纪才被创立.最简单的说法,即是在最原始的集合论 --朴素集合论中的定义,集合就是"确定的一堆东西".集合里的"东西",叫作元素. 由一个或多个确定的元素所构成的整体叫做集合.若x是集合A的元素,则记作x∈A.集合中的元素有三个特征:1.确定性(集合中的元素必须是 确定的) 2.互异性(集

python Day3 集合 文件处理 函数 字符编码 递归 高级函数

集合 集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重,把一个列表变成集合,就自动去重了 关系测试,测试两组数据之前的交集.差集.并集等关系 常用操作 s = set([3,5,9,10]) #创建一个数值集合 t = set("Hello") #创建一个唯一字符的集合 a = t | s # t 和 s的并集 b = t & s # t 和 s的交集 c = t – s # 求差集(项在t中,但不在s中) d = t ^ s # 对称差集(项在t或s中,但不会同时

Python Day3 集合 函数 文件操作

set集合 set是一个无序且不重复的元素集合 class set(object):    """     set() -> new empty set object     set(iterable) -> new set object          Build an unordered collection of unique elements.    """     def add(self, *args, **kwargs

python 运维自动化之路 Day3

学习内容: 1.集合 2.文件操作 3.字符转编码操作 4.函数介绍 5.作用域.局部与全局变量 6.递归 7.函数式编程介绍 8.高阶函数 1.集合 集合是Python常用的数据类型,集合也是无序的. 特性:去重复 关系测试 格式:set([]) 去重复,例如: a= set([1,2,2,3,3,4,4,]) #集合具有天生去重复的特性!集合的格式:set([]) print (a) 打印结果: C:\Users\hca006\AppData\Local\Programs\Python\Py

day-3 小知识点补充 编码 集合 文件及函数初识

1. 小知识点的补充 ==数值比较 is比较两边的内存地址 id获取内存地址 小数据池str int,公用一个内存,目的节省内存空间. 要求:A. int范围是-5到256,指向一个地址空间 B. str: 1.不能含有特殊字符 2.单个元素乘以数字不能超过21 2. 编码 字符:看到内容的最小单位.比如: abc:a一个字符 中国:中 Ascii码:1个字节,字母,数字,特殊字符 Unicode:也称万国码,最开始2个字节表示一个字符,后升级到4个字节表示一个字节 Utf-8:最后用8位表示一

day3 set 集合知识

集合的特点:无序的,不重复,可以嵌套 这是集合 {1,2,3,4,5} 这是字典 {"name":"wangfei", "age":18} 创建一个集合,方法有3种 方法一 >>> s1 = {"123", "456"} >>> type(s1) <class 'set'> 方法二 创建一个空的集合 >>> s2 = set() >&g

Day3:数据类型(布尔值、集合)

一.布尔值 布尔值和布尔代数的表示完全一致,一个布尔值只有True.False两种值,要么是True,要么是False,在Python中,可以直接用True.False表示布尔值(请注意大小写),也可以通过布尔运算计算出来: >>> True True >>> False False >>> 3 > 2 True >>> 3 > 5 False 布尔值可以用and.or和not运算. and运算是与运算,只有所有都为Tru

day3 字典,集合,文件

一.深浅copy 浅copy只copy第一层,不copy第二层.copy后,第一层指向不同内存地址.第二层指向相同的内存地址. 导入copy模块,deepcopy深copy.deepcopy后,均指向不同的内存地址,占用硬盘空间. 深copy不常用. 二. 字典操作 字典一种key - value 的数据类型,使用就像我们上学用的字典,通过笔划.字母来查对应页的详细内容. 语法: info = { 'stu1101': "TengLan Wu", 'stu1102': "Lo

day3 python 集合 文件

字典是无序的,列表是有序的 a='zhangsan' print (a[1]) a[2]=222 #字符串不能赋值 集合(set):把不同的元素组成一起形成集合 info=[1,2,34,5,6,7]info=set(info)print(info) 或 info=[1,2,34,5,6,7] se=set(info) print(se) 交集(&) 与集合AND等价,交集符号的等价方法是intersection #交集intersection info=[1,2,34,5,6,7] info=