Python 05 字典与集合

5.1 字典与集合

配套的 Python 教学视频


5.1.1 字典

什么是字典呢?它就是 一个 键值对 序列。

即 一个 键名 对应 一个 值。

比如说:

序列名 = {'华为':6988,'小米':1998,'苹果':5888}

我们如果 想要把 下标不用 数字表示,而是其它的 类型表示的话,就需要用到 字典。

print(序列名['华为']) 意思就是 键名为 华为的 对应的 值是什么
下标 也就被 键名 给代替了。

在这里插入图片描述
键值对呀是很重要的,在 我们 前端JS 里有一个 特殊的数据类型,JSON类型,它存储 数据的 格式 就是 键值对 格式的。而且 现如今 JSON 形式的数据 在网页上 几乎 到处可见。所以 做 WEB 开发的话,字典 必须是要 会用的。

① 修改或增加:

字典序列名[键] = 值

如果键不存在 则 直接添加这个键值对,如果键存在 则 修改这个 键的值。

② 删除数据:

del 字典[键] 删除某个键值对 del 字典名 删除整个字典
在这里插入图片描述

字典名.clear() 清空整个字典,但字典本身的架子 留下来了。
在这里插入图片描述

③ 查找数据

如果直接按照 字典[键] 的方式去查询的话,不存在 则会报错。
在这里插入图片描述

字典.get(键,默认值) 这种方式 进行 查找的话,找不到 的话 会返回你设定的默认值。
在这里插入图片描述

字典.values() 返回字典中所有的值在这里插入图片描述

字典.items() 返回所有键值对 返回一个可迭代对象,即把每个 键值对都存到一个元组里,这些个元组 都放到一个 列表里。
在这里插入图片描述在这里插入图片描述
④遍历字典的相关操作

遍历键名

for x in 字典.keys():
    print(x)

在这里插入图片描述遍历值 values

for x in 字典.values():
    print(x)

在这里插入图片描述

遍历字典键值对的骚操作

键 和 值 居然 可以通过 python 的 For-Each 语句 单独的 区分取出。太牛逼了。。。

for,in 字典.items():
	print(f'{} = {}')

在这里插入图片描述


5.1.2 集合

创建集合:可以用 {} 或 set() 创建集合,但是创建空集合 必须用 set()。

可能在这里 大家 搞不懂,{} 这个大括号 不是 创建 字典的嘛?

确实是!但是 {} 里面 是 键值对的时候,创建的是 字典。如果 不是 键值对,那么 创建的 就是集合了。

那为什么 空集合 又要 用 set() 方法 来建立呢,因为 代码分析器 没办法 分清 {} 到底是 集合 还是 字典,它会默认 当作 字典来处理,也就不能 创建空的集合了。

在这里插入图片描述
① 增加数据:

集合.add(数据) 如果添加的元素 在集合里 能找到,则不做任何操作。

集合.update(字符串or列表or元组) 添加一个 元组、列表、字符串。当然 添加字符串 它会 以 各个字符的形式去添加。因为 字符串 的原型 是 字符列表。

② 删除数据

集合.remove(数据) 如果数据不存在 会报错

集合.discard(数据) 如果数据不存在,不会报错,只是不做任何操作。

集合.pop() pop 实际上是 弹出栈顶的,但是 这个结构是 集合。所以 是 弹出 任意一个数据,并且 返回这个数据。

③ 判断数据是否在集合中(因为根本没法取数据,所以只能判断集合里面是否有这个数据。)

数据 in 集合 判断数据是否在集合中

数据 not in 集合 判断数据是否不在集合中

④ 集合是由序列转换来的

set(任一类型的序列) 都可以把序列转为集合。


5.1.3 将学过的容器或类型进行分类

序列:序列是一个存放多个值的连续内存空间。

下标序列:支持下标的序列,可以用下标进行操作。切片操作等等。列表、元组、字符串

非下标序列:不支持 下标的序列。字典、集合

可变序列:元素可以进行增删改,改变之后 id 地址不会发生变化。列表、字典、集合
不可变序列:元素可以进行增删改,改变之后 id 地址 会发生变化。整型、浮点型、字符串、元组 ……

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值