| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> Python 基础学习06 字典与集合 -> 正文阅读 |
|
[Python知识库]Python 基础学习06 字典与集合 |
字典对象的创建与索引 列表是有序的可变容器,元组是有序的不可变容器,而字典则是无序的可变容器。字典类型对象的元素组织和查找的方法都和现实中的字典完全一致,这也是该类型对象名称的由来。字典类型对象是Python开发中非常常用的对象类型 1.字典的创建 Python中的字典和真实环境中的字典类似,字典是由一个个键值对(Key-value)构成,键就相当于字典的目录,在键中存储由一个内存地址(相当于页码),然后我们在内存地址中查找到这个键对应的值(也就相当于这一个页面中存储的单词的详细讲解),字典也被称作关联数组或者哈希表。 1.1一般创建方法 字典由键(key)和对应值(value)成对组成的特殊元素构成,外侧则使用大括号圈定。如:
Point: dict即表示字典,其中'A'、'B'、'C'为字典中的键(Key),并且键值一一对应,用冒号表示对应关系; 一个字典可以包括多个键值对,每个键值对可看成是字典中的一个元素,每隔元素彼此之间用都好进行分隔; 字典中的Key智能使用不可变类型对象充当,且一个字典中的Key必须是独一无二的,而Value可用任意类型对象; 不可变类型包括数字、字符串和元组; 可变类型包括列表、字典和集合。
?当然,若把字典看成一种特殊的容器,字典理所当然可用创建空字典。 1.2 使用dict函数创建字典 和列表、元组类似,字典也可以用类型同名函数dict来进行创建。由于字典数据结构比较特殊,在使用dict函数创建的过程也较为特殊,dict函数必须输入若干长度为2的元组组成的列表,才能顺利的转化为字典
必须输入长度为二的元组组成的列表,在转化的过程中长度为2的元组中的第一个元素将变为Key,第二个元素将变为Value; 正是因为二院元组中第一个元素会对应转化为字典的Key,因此该元素对象类型必须是不可变类型对象,否则会报错。 dict还有特殊用法,能将赋值过程转化为字典的对应关系
赋值过程转化为字典时,变量名称将会变成字典的Key,并且会转化为字符串; 利用该方法创建字典时,只能创建Key为字符串型的字典。 2.字典的索引 字典的无序特性导致字典的索引和字符串、列表以及元组都不一样。在实际使用中,我们是根据字典元素的二元性(Key-Value)进行索引,即通过输入Key来查找对应的Value,而非利用索引值进行索引。 2.1 一般索引方法 基本索引格式为dict[key],仍然是利用中括号进行索引,知识括号内不再是索引值而是要查找的key的名称。同时,索引返回结果也不是整个Key-Value元素,而是Key对应的Value值。 索引值不存在时会报错。
2.2 get方法 除了一般索引方法外,对于字典这类比较特殊的对象,通常我们还会考虑使用get方法来进行索引。和一般索引方法不同,get方法可指定当对应的key不存在时返回的结果。
字典的常用方法? 1.Keys/Values方法 面对字典对象,我们可以使用Keys或values方法选取字典中的keys或者values。
2.items方法 keys和values方法都是将key或者value单独返回,而items方法则是将每个key-value键值对元素打包返回。
3.update方法? ? ? 顾名思义,update函数是用于更新字典的方法,是一种非常灵活的对字典进行修改的方法。
更新原则是,有新的部分则更换或添加新的部分,其他部分保留; 更新是有方向的,d.update(d1)和d1.update(d)有本质上的区别;? ?? 更新过程会在原来对象基础上对其进行修改。 4.setdefault方法? setdefault方法会根据键值对原本是否存在,进行有选择的修改。
集合的创建 集合是一类非常特殊的对象,其既有前面提到的列表、元组等容器的功能特点,是一种无序且不可变类型容器,但只用简单形象的容器角度理解集合又会有所欠缺。一个比较合适的理解集合的角度,是将其看作字典的一种特殊形式——由字典的Keys所组成的列表。由此我们可知,集合内的元素和字典中的keys一样,其一是必须为不可变对象类型,其二是元素之间不能重复。 1.基本方法 和其他容器创建过程一样,集合也有一个一般创建方法,使用{}进行标注。
字典key值特性
2.set函数创建法
注意:由于{ }表示空字典,因此若要创建空集合,则必须借助set函数。
3.利用集合去重? 集合的不可变包含重复值的特性,使得我们可以借助集合来进行去重操作。
集合的常用方法 作为不可变对象类型,但我们无法利用索引切片对其进行内部元素修改,只能利用一些通用方法修改集合。同时,Python中的集合还可进行数学意义的集合运算,如交集、并集、补集、差集等 1.集合元素增加、删除方法 1.1 add方法
1.2 remove方法 常用于删除集合中的指定元素,由于集合本身是无序对象,且元素没有key-value二元属性,因此只能通过指定的方法对元素进行删除。
1.3 pop方法 随机删除一个元素(实际是按照重排列后的集合显示顺序进行删除),根本原因仍然是集合的无序性。
2.集合的数学运算 2.1 交集运算
2.2 并集运算
2.3 差集运算
2.4 补集运算
2.5 集合关系判断
冻集合的创建与使用 冻集合不可变 1.创建 冻集合只支持利用函数来进行创建,创建函数为frosenset。
冻集合和集合的元素都必须是不可变类型对象 2.冻集合的常用方法 由于冻集合本身不可变性,冻集合不支持集合的增、删方法,只支持一些基本集合运算。
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 2:17:12- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |