Python程序开发——第四章 字典与集合
2021/9/26 17:11:03
本文主要是介绍Python程序开发——第四章 字典与集合,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录
- 一、字典
- (一)字典的创建
- (二)字典的访问
- (三)字典的增删改查
- 1、字典的添加
- 2、字典的删除
- 3、字典的修改
- 4、字典的查询
- 二、集合
- (一)集合的分类
- (二)集合的创建
- (三)集合元素的添加
- (四)集合的删除
- (五)集合类型操作符
- 三、列表、元组、字典、集合的总结
一、字典
字典是一种映射类型
,即键-值
的形式组合,字典中的元素是无序
的,键可以用字符串、数字或元组,但不能使用列表。
(一)字典的创建
通过使用花括号,即{}
来创建字典,其中可以包含多个键值对(键-值),键和值之间
使用冒号:
连接,且多个键值对使用逗号相隔。
若花括号内没有键值对,则会创建一个空字典,若字典中由重复键,则旧键会被覆盖。
x = {"a": "第一", "a": "第二"} print(x)
可以看出字典的键已被替换为“第二”:
例如下列python代码:
x = {"a": "第一", "b": "第二", "c": 1, "d": 2} y = {} print(x, y)
运行结果如下:
另外也可以通过使用内置函数dict()函数
来创建字典,其中键值对之间通过使用=
连接,即键=值。
例如下列python代码:
a = dict(name="xiaoming", sex="男", age=20) print(a)
运行结果如下:
若通过使用函数来创建字典中,有重复键时,会报错。
(二)字典的访问
由于字典中的键是唯一的
,可以通过键来访问获取键对应的值,例如下列python代码:
a = dict(name="xiaoming", sex="男", age=20) print(a['name'])
运行结果如下:
若字典中不存在所要访问的键,则会报错。
(三)字典的增删改查
1、字典的添加
通过指定新键添加字典元素或使用update()函数
来添加字典元素。
例如下列python代码,指定创建一个新键tel,值为1234567;使用update函数添加一个新的元素:
a = {"name": "xiaoming", "sex": "男", "age": 20} print(a) a["tel"] = 1234567 print(a) a.update(address="Rod 1") print(a)
运行结果如下:
2、字典的删除
可以通过使用pop()函数
,对字典中指定元素的键值
进行删除。
使用popitem()函数
,随机
删除字典中的元素。
使用clear()函数
,清空字典中的所有元素
。
例如下列python代码,指定删除age键值对,popitem()函数随机删除的是tel键值对,最后通过clear()函数清空字典:
a = {"name": "xiaoming", "sex": "男", "age": 20, "tel": 134567} a.pop("age") print(a) a.popitem() print(a) a.clear() print(a)
运行结果如下:
另外也可以通过del语句
来输出字典中单个的元素或清空所有。
例如下列python代码:
a = {"name": "xiaoming", "sex": "男", "age": 20, "tel": 134567} del a["tel"] print(a) del a print(a)
运行结果如下,这里第二个print函数出现错误的原因是,del语句已经将字典a删除,所以显示字典a未被定义:
3、字典的修改
通过对字典中已存在的元素进行更改从而修改字典元素,它和字典的添加差不多,也是可以通过指定键或者update函数来进行修改。
例如下列python代码:
a = {"name": "xiaoming", "sex": "男", "age": 20} a["name"] = "xiaofang" print(a) a.update(sex="女") print(a)
运行结果如下:
4、字典的查询
通过key()、values()、items()函数来返回相应的键、值、元素,它们都会分别返回dict_keys、dict_values、dict_items相应的对象,且这些对象是可以迭代的,所以可以通过for循环将器遍历输出。
通过使用keys()函数
来查询字典中所有的键。
例如下列代码:
a = {"name": "xiaoming", "sex": "男", "age": 20} print(a.keys()) print("通过for循环遍历输出所有的键:") for i in a.keys(): print(i)
运行结果如下:
使用values()函数
来查询字典中所有的值。
例如下列python代码:
a = {"name": "xiaoming", "sex": "男", "age": 20} print(a.values()) print("通过for循环遍历输出所有的值:") for i in a.values(): print(i)
运行结果如下:
使用items()函数
来查询字典中的所有元素。
例如下列python代码:
a = {"name": "xiaoming", "sex": "男", "age": 20} print(a.items()) print("通过for循环遍历输出所有的元素:") for i in a.items(): print(i)
运行结果如下:
二、集合
集合类型是无序的
,其中元素不可重复
,它与数学学科里面的集合一样。
(一)集合的分类
集合分为可变集合和不可变集合
,即集合中的元素是否可变。
(二)集合的创建
可变集合和字典的一般创建方法一样,也通过花括号
,即{}
来创建一个集合,多个元素通过逗号分隔。
或者可以使用set()函数
来创建集合,也可以直接使用set()来创建一个空集合,而不能使用花括号,否则会创建一个空字典。
例如下列Python代码,向集合y、z中传入一个列表、元组:
x = {1, 0, "python", "css", "c++"} print(x) y = set(["t", "h", "e"]) z = set(("t", "h", "e")) print(y, z)
运行结果如下:
不可变集合通过使用frozenset()函数
来创建,该集合中的元素不可改变。
(三)集合元素的添加
可以通过add()函数
和update()函数
对可变集合
中添加集合元素,add()函数和update()函数分别是添加一个元素、添加多个元素,且add()含是将元素作为一个整体添加到集合中,而update()函数是将元素拆成多个元素来添加。
例如下列python代码:
a = {1, 2, 3, 4} print(a) a.add(5) print(a) b = {"one", "two"} b.update("three", "four") print(b)
运行结果如下:
(四)集合的删除
可以通过remove()函数、discard()函数
来删除可变集合中的指定元素,其区别是discard()函数对不存在集合中的元素进行删除时不执行任何操作,而remove()函数会报错。
pop()函数
用于删除可变集合中的随机元素。
也可以通过clear()函数来清空可变集合中的所有元素或del语句直接删除集合。
例如下列python代码:
a = {1, 2, 3, 4} print(a.clear()) b = {3, 4} del b
运行结果如下:
(五)集合类型操作符
在Python中,可以通过集合类型操作符对集合进行操作。
名称 | 符号 | 含义 |
---|---|---|
联合 | | | 两方集合并集组成新集合 |
交集 | & | 两方集合交集组成新集合 |
差补 | - | 排除交集,将只属于一方的元素组成新集合 |
对称差分 | ^ | 排除两方集合的交集组成新的集合 |
例如下列python代码:
x = {1, 2, 3, -1} y = {0, 2, 6} print(x | y) print(x & y) print(x - y) print(y - x) print(x ^ y)
运行结果如下:
三、列表、元组、字典、集合的总结
在Python中,组合类型分为序列类型、集合类型和映射类型,序列类型即列表和元组,它们较其它两种是有序的;集合类型是无序的且元素不重复;映射类型是以键-值的形式来表示的。
以下是列表、元组、字典、集合的对比:
这篇关于Python程序开发——第四章 字典与集合的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Python基础编程
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南