网站首页 > 基础教程 正文
上期我们学习了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的数据类型相关基础知识有了初步的掌握。以后我们会针对数据类型通过一些函数或项目来进一步学习。
猜你喜欢
- 2025-01-11 Python 的集合和字典实现的机制
- 2025-01-11 Python基础编程——字典的常用方法(三)
- 2025-01-11 Python数据类型之字典(Dictionary)——2
- 2025-01-11 剖析Python字典推导式:以简驭繁的字典生成之道
- 2025-01-11 python字典dict入门
- 2025-01-11 Python中字典添加元素的几种方法
- 2025-01-11 python字典常用的6种方法
- 2025-01-11 如何在 Python 中创建一个不可变的字典 - Adam Johnson
- 2025-01-11 Python.get()方法:改进您的字典操作
- 05-22Linux cron任务计划
- 05-22测试人员如何在linux服务器中查询mysql日志?
- 05-22Nginx命令最全详解(29个最常用命令)
- 05-22初识自动化网络编排器NSO,轻松配置复杂的多厂商网络
- 05-22Nacos在企业生产中如何使用集群环境?
- 05-22如何从 MySQL 错误日志中排查数据库故障
- 05-22Linux面试最高频的5个基本问题
- 05-22linux网卡混杂模式
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- deletesql (62)
- c++模板 (62)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- console.table (62)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)