网站首页 > 技术文章 正文
上期我们学习了Python的列表和元组,通过相关的练习应该有所收获。今天来讲一讲字典和集合。
1.字典
字典是一种可变容器模型,可存储任意类型对象。和之前我们讲过的列表及元组都不相同,字典中存储的是一组数据,这组数据包含了两个部分键和值。例如每个同学都有学号和姓名,其中学号是唯一的,姓名是可能相同的,字典就是这样的格式,可以把学号理解为键,姓名理解为值。另外Python默认的字典是无序的,不像元组和集合,通过index索引可以获取值,由于没有顺序,所以字典不存在索引。字典的键是唯一的,不能出现多次,多次出现时取最后一个值。下面我们创建字典并进行一些基本操作。
1.字典的形式及创建
整个字典包括在花括号 {} 中,可以看出字典每个元素包含2个部分,他们分别是‘键’和‘值’,键和值之间用:隔开,两个元素之间用,隔开。
2.字典元素的访问
由于字典不存在顺序所以也没有索引,但是我们可以通过访问其键获取它对应的值,相当于我们要去一个班级找学生,只要报出学号就可以找到该学生了。
3.添加、修改、删除元素
字典是可以变化的,我们对其进行增加删除和修改操作。增加元素就是直接通过键值对进行添加;删除元素还是通过del语句进行删除,删除的是一对元素,包括键和值。修改元素就是直接覆盖了现有元素,它的形式和添加元素的格式类似。以上只是字典的最基础操作,字典可以存储的各种混合数据类型,其中键需要取不可变的数据类型,但是值是可以取任意类型的对象。
2.集合
在学习数学的时候我们应该学过集合这个概念,在Python中同样存在一种名叫集合的数据类型,集合(set)是一个无序的不重复元素序列。集合的表达式和字典有点相似都是包括在花括号 {} 中。集合中所保存的元素是没有顺序的,且可以保存多种数据类型,集合中的元素都存在唯一性,不能重复出现。
1.创建集合
创建集合的时候有2种方式,一种是直接使用集合的特征符号‘{}’来创建,一种是使用set()函数强制类型转换来创建。集合是由‘{ }’括起来的结构,每个元素之间用‘,’隔开,集合和字典都是用大括号括起来,但是集合之间不使用冒号,只能使用逗号。创建一个空集合必须用 set() 而不是 { },因为{ } 会创建一个空字典。
2.删除集合
在学习增添和删除元素之前,还是回忆学过的del()方法,del()方法可以直接删除整个集合。
3.添加、删除元素
集合是可变序列,因此我们可以对其中的元素进行增删操作。添加元素使用add()方法;删除元素可以使用集合的pop()方法或者remove()方法去删除一个元素,也可以使用clear()方法清空集合。
需要注意的是remove()方法是移除指定元素,而pop()方法是直接删除集合中的第一个元素并输出,clear()方法直接清空了集合中的所有元素。
通过列表、元组、集合、字典的学习,我们对Python的数据类型相关基础知识有了初步的掌握。以后我们会针对数据类型通过一些函数或项目来进一步学习。
- 上一篇: 128.C# Dictionary字典
- 下一篇: Python数据类型——字典
猜你喜欢
- 2024-12-07 C# “字典” Dictionary 的简单用法:轻松管理键值对
- 2024-12-07 以专业方式在 Python 中进行调试:将 print() 替换为 ic()
- 2024-12-07 python基础——字典详解
- 2024-12-07 Python教程-字典
- 2024-12-07 「教程10」国产编程语言Cbrother 字典
- 2024-12-07 Python数据类型——字典
- 2024-12-07 128.C# Dictionary字典
- 2024-12-07 pthon每天学习一点点(字典推导式)
- 2024-12-07 Python字典:定义、基本操作与方法详解
- 2024-12-07 Python元组与字典用法详解
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (87)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)