python集合是否可变总结
集合是一个无序的可变的序列。集合中的元素必须是可hash的,即不可变的数据类型。
空集合
a=set()
注意a={}创建的是一个空字典。
set —— 可变集合。集合中的元素可以动态的增加或删除。
frozenset —— 不可变集合。集合中的元素不可改变。
注:对于 并集, 交集, 差集 等的返回值,与最左边的操作数具有相同的类型。例如:s & t 取交集。s集合是一个set类型的集合,t集合是一个frozenset类型的集合,则返回的结果将是set类型的集合。
也可以用set()转化为集合
b=[1,2,3,4] a=set(b) a {1,2,3,4}
还可以用{}来创建一个集合
a={1,2,3,4,1} a {1,2,3,4}
与字典一样,因为集合是无序的,所以当有重复元素时,只保留其中一个。
不可变集合就是一个无序的不可变的集合
用frozenset(seq)创建
a=frozenset([1,2,3,(1,2,4)]) a frozenset({1,2,3,(1,2,4)})
元素也只能是可hash的
frozenset([1,2,3,[1,2,4]]) error
主要用来做字典的键。。与tuple的区别在于无序,元素不可重复,且元素只能是不可变类型。
描述:可以将其它的组合数据类型转化为不可变集合类型(或将可变的集合类型set转变为不可变的集合类型 frozenset),返回一个无重复元素且排序任意的不可变集合。
frozenset()函数
语法: frozenset() -> empty frozenset object 返回一个不可变空集合
frozenset(iterable) -> frozenset object 返回一个不可变新集合
iterable —— 要转换的组合数据类型。
相关推荐
-
Python基本数据结构与用法详解【列表、元组、集合、字典】
本文实例讲述了Python基本数据结构与用法.分享给大家供大家参考,具体如下: 列表 Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能.以下是 Python 中列表的方法: 下面示例演示了列表的大部分方法: >>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >
-
Python3.5集合及其常见运算实例详解
本文实例讲述了Python3.5集合及其常见运算.分享给大家供大家参考,具体如下: 1.集合的定义:集合是一个无序的.无重复的数据的数据组合. 2.集合的特征: (1)去除重复元素:将一个列表变成集合就可实现去重. (2)测试关系:测试两组数据之间交集.并集.差集等关系. 3.集合常用的操作: (1)去重复:将列表变成集合,形式:集合=set(列表) list_1 = [1,3,5,3,6,8,9,6,8,1] list_1 = set(list_1) print(list_1,type(lis
-
Python中的集合介绍
1.集合的定义 集合的元素是不可重复的 s = {1,2,3,1,2,3,4,5} print(s) print(type(s)) s1 = {1} print(s1) print(type(s1)) 集合就算只有一个元素,也是集合,不需要像列表一样,加个逗号 那么如何定义一个空集合 s2 = {} print(type(s2)) s3 = set([]) print(s3) print(type(s3)) 集合的应用(去重) li = [1,2,3,1,2,3] print(list(set(
-
python集合是否可变总结
集合是一个无序的可变的序列.集合中的元素必须是可hash的,即不可变的数据类型. 空集合 a=set() 注意a={}创建的是一个空字典. set -- 可变集合.集合中的元素可以动态的增加或删除. frozenset -- 不可变集合.集合中的元素不可改变. 注:对于 并集, 交集, 差集 等的返回值,与最左边的操作数具有相同的类型.例如:s & t 取交集.s集合是一个set类型的集合,t集合是一个frozenset类型的集合,则返回的结果将是set类型的集合. 也可以用set()转化为集合
-
浅谈Python中的可变对象和不可变对象
什么是可变/不可变对象 不可变对象,该对象所指向的内存中的值不能被改变.当改变某个变量时候,由于其所指的值不能被改变,相当于把原来的值复制一份后再改变,这会开辟一个新的地址,变量再指向这个新的地址. 可变对象,该对象所指向的内存中的值可以被改变.变量(准确的说是引用)改变后,实际上是其所指的值直接发生改变,并没有发生复制行为,也没有开辟新的出地址,通俗点说就是原地改变. Python中,数值类型(int和float).字符串str.元组tuple都是不可变类型.而列表list.字典dict.集合
-
python集合的创建、添加及删除操作示例
本文实例讲述了python集合的创建.添加及删除操作.分享给大家供大家参考,具体如下: 集合时无序可变的序列,集合中的元素放在{}内,集合中的元素具有唯一性. 集合中只能包含数字.字符串.元组等不可变的类型数据(或者说可哈希),而不能包含列表.字典.集合等可变的类型数据 1.集合的创建 方法一:把集合直接赋值给一个变量 >>> num={1,2,3,4} 方法二:使用range对象 >>> a=set(range(1,4)) >>> a {1, 2,
-
Python集合基本概念与相关操作实例分析
本文实例讲述了Python集合基本概念与相关操作.分享给大家供大家参考,具体如下: 集合的概念 集合是无序可变,元素不能重复.实际上,集合底层是字典实现,集合的所有元素都是字典 中的"键对象",因此是不能重复的且唯一的. 集合创建和删除 使用{}创建集合对象,并使用 add()方法添加元素 >>> a = {3,5,7} >>> a {3, 5, 7} >>> a.add(9) >>> a {9, 3, 5, 7}
-
python集合能干吗
一.什么是集合: 集合(set)是一个无序的不重复元素序列. 重点:集合里边的元素是不可重复的并且集合内的元素还是无序的. 集合是一个可变容器 集合内的数据对象都是唯一的(不能重复) 集合是可迭代对象 集合相当于是只有键没有值得字典(键就是集合中的数据) 集合内的元素可以设置不可变类型frozenset() 集合pop()删除的时候类似队列先进先出 ,是类似. 也就是说,集合可以像元组一样,设置不可改变的类型:也可以默认像字典,列表一样,可以迭代改变:同时集合里的元素可以是列表,元组,字典. 二
-
Python集合的基础操作
目录 1.集合 2.创建集合 3.集合的运算 3.1 成员运算 3.2 交并差运算 3.3 比较运算 4.集合的方法 5.不可变集合 1.集合 Python中的集合和数学上的集合基本是没有区别的,是无序的,即不可以使用索引访问的,集合中是不能出现重复元素的. 2.创建集合 在Python中创建集合使用花括号{}字面量的方式,或者使用set()来创建一个集合.使用{}中必须至少含一个元素,创建空集合不能使用{},这样创建的是空字典,应该使用set()的方式来创建一个集合. # 使用字面量方法创建集
-
Python集合的增删改查操作
目录 1.集合新增集合元素 2.删除可变集合元素 3.修改可变集合 4.集合元素查询方法 前言: 集合分为可变集合和不可变集合两种,所以对其的增删改查操作要看集合的类型来决定.不可变的数据当然不能增删改,只能查询,可变集合则限制稍微少点.除此之外集合是无需的,所以也没有办法直接通过下标来查询,同时集合中的元素没有自己的键,也不能使用键来查询,那么应该如何操作集合这种数据类型呢?下面给大家列举出来一些操作方法. 1.集合新增集合元素 set1 = {'name', 19, 'python'} se
-
Python集合set的交集和并集操作方法小
目录 一.交集操作 1.使用intersection()求交集 2.使用位运算&符求交集 3.intersection_update()方法 4.使用intersection()方法 二.并集操作 1.使用union()求并集 2.使用逻辑或|求并集 3.使用update()求并集,只能作用域可变集合 前言: 集合这种数据类型和我们数学中所学的集合很是相似,数学中堆积和的操作也有交集,并集和差集操作,python集合也是一样. 一.交集操作 1.使用intersection()求交集 可变集合和
-
Python集合set的交集和并集操作方法
目录 一.交集操作 1.使用intersection()求交集 2.使用位运算&符求交集 3.intersection_update()方法 4.使用intersection()方法 二.并集操作 1.使用union()求并集 2.使用逻辑或|求并集 3.使用update()求并集,只能作用域可变集合 前言: 集合这种数据类型和我们数学中所学的集合很是相似,数学中堆积和的操作也有交集,并集和差集操作,python集合也是一样. 一.交集操作 1.使用intersection()求交集 可变集合和
-
Python集合之set和frozenset的使用详解
目录 简介 构造 基本使用 交集.并集.差集.对称差集 无交集.子集.超集 运算符 可用于 set 的操作 简介 集合对象 set 是由具有唯一性的可哈希对象组成的无序多项集,如 list 不能哈希因此,不能作为 set 的一项. set 的常见用途包括成员检测.从序列中去除重复项以及数学中的集合类计算,如交集.并集.差集与对称差集等. set 不记录元素位置或插入顺序. 相应地,set 不支持索引.切片或其他序列操作. 目前有两种内置集合类型,set 和 frozenset: set 是可变的
随机推荐
- Go语言入门教程之Arrays、Slices、Maps、Range操作简明总结
- 获取键盘键的值 集合 方便监控键盘事件
- jQuery slider Content(左右控制移动)
- JavaScript中一些特殊的字符运算
- javascript判断是否有对RadioButtonList选项选择
- php模拟socket一次连接,多次发送数据的实现代码
- 在.NET中读取嵌入和使用资源文件的方法
- C++实现的一个可以写递归lambda的Y函数
- 闲话技术人员之苦中作乐
- Lua字符串库中的几个重点函数介绍
- javascript 控制input只允许输入的各种指定内容
- javascript 不停(setInterval)/延时(setTimeout)函数使用实例
- 晨顺科技为您提供免费全能空间服务
- 提供下最酷的QQ空间4.0非主流大图模板
- Java Swing中JTable渲染器与编辑器用法示例
- java笔记学习之操作符
- Apache虚拟目录简单知识汇总
- TypeScript基础入门教程之三重斜线指令详解
- python 列表递归求和、计数、求最大元素的实例
- 关于laravel 日志写入失败问题汇总