Python学习笔记第九天(字典)

简介: Python学习笔记第九天讲解字典、创建空字典、访问字典里的值、删除字典元素、字典键的特性、字典内置函数与方法的用法。

Python学习笔记第九天

字典

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号( , )分割,整个字典包括在花括号 {} 中 。

dict 作为 Python 的关键字和内置函数,变量名不建议命名为 dict

键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字。

# 实例 1
tinydict = {'name': 'zhangsan', 'grade': 1, 'url': 'www.baidu.com'}
print(tinydict)

创建空字典

使用大括号 { } 创建空字典。

# 实例 2

# 使用大括号 {} 来创建空字典  
emptyDict = {}     
# 打印字典  
print(emptyDict)     
# 查看字典的数量  
print("Length:", len(emptyDict))     
# 查看类型  
print(type(emptyDict))

使用内建函数 dict() 创建字典。

# 实例 3
emptyDict = dict()   
# 打印字典  
print(emptyDict)    
# 查看字典的数量  
print("Length:",len(emptyDict))    
# 查看类型  
print(type(emptyDict))

访问字典里的值

把相应的键放入到方括号中。

# 实例 4
tinydict = {'Name': 'zhangsan', 'Age': 7, 'Class': 'First'}
print("tinydict['Name']: ", tinydict['Name'])
print("tinydict['Age']: ", tinydict['Age'])

如果用字典里没有的键访问数据,会输出错误。

# 实例 5
tinydict = {'Name': 'zhangsan', 'Age': 7, 'Class': 'First'}
print("tinydict['Alice']: ", tinydict['Alice'])

修改字典

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对

# 实例 6
tinydict = {'Name': 'zhangsan', 'Age': 7, 'Class': 'First'}
tinydict['Age'] = 8 # 更新 Age 
tinydict['School'] = "X大学" # 添加信息 
print("tinydict['Age']: ", tinydict['Age'])
print("tinydict['School']: ", tinydict['School'])

可以出Age从7变成8,多添加了个键与值。

举一反三

创建一个空字典在里面添加水果和蔬菜这两个键,水果值为苹果、蔬菜值为西红柿,再把西红柿改成马铃薯。

# 练习 1
Dict = {}
Dict['fruit'] = "苹果" 
Dict['vegetables'] = "西红柿"  
print("Dict['fruit']: ", Dict['fruit'])
print("Dict['vegetables']: ", Dict['vegetables'])
Dict['vegetables'] = "马铃薯"
print("Dict['vegetables']: ", Dict['vegetables'])

删除字典元素

能删单一的元素也能清空字典.clear(),清空只需一项操作,显式删除一个键或字典用del命令典。

# 实例 7
tinydict = {'Name': 'zhangsan', 'Age': 7, 'Class': 'First'}
del tinydict['Name'] # 删除键 'Name' 
tinydict.clear() # 清空字典 
del tinydict # 删除字典
print("tinydict['Age']: ", tinydict['Age'])
print("tinydict['School']: ", tinydict['School'])

字典键的特性

字典值可以是任何的 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。

两个重要的点需要记住:

  1. 不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住。
  2. 键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。

字典内置函数与方法

Python字典包含了以下内置函数:

序号 函数及描述
1 len(dict) 计算字典元素个数,即键的总数。
2 str(dict) 输出字典,可以打印的字符串表示。
3 type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型。

Python字典包含了以下内置方法:

序号 函数及描述
1 [dict.clear()] 删除字典内所有元素
2 [dict.copy()] 返回一个字典的浅复制
3 [dict.fromkeys()]创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
4 [dict.get(key, default=None)] 返回指定键的值,如果键不在字典中返回 default 设置的默认值
5 [key in dict] 如果键在字典dict里返回true,否则返回false
6 [dict.items()] 以列表返回一个视图对象
7 [dict.keys()]返回一个视图对象
8 [dict.setdefault(key, default=None)] 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
9 [dict.update(dict2)]把字典dict2的键/值对更新到dict里
10 [dict.values()] 返回一个视图对象
11 [pop(key[,default])]l) 删除字典 key(键)所对应的值,返回被删除的值。
12 [popitem()] 返回并删除字典中的最后一对键和值。

结束语

今天学习的是Python字典学会了吗。 今天学习内容总结一下:

  1. 字典
  2. 创建空字典
  3. 访问字典里的值
  4. 删除字典元素
  5. 字典键的特性
  6. 字典内置函数与方法
相关文章
|
16天前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
73 1
|
27天前
|
存储 JSON 数据管理
Python字典:高效数据管理的瑞士军刀
Python字典基于哈希表实现,提供接近O(1)的高效查找,支持增删改查、遍历、合并等丰富操作,广泛应用于计数、缓存、配置管理及JSON处理。其灵活性与性能使其成为数据处理的核心工具。
305 0
|
1月前
|
存储 缓存 安全
Python字典:从入门到精通的实用指南
Python字典如瑞士军刀般强大,以键值对实现高效数据存储与查找,广泛应用于配置管理、缓存、统计等场景。本文详解字典基础、进阶技巧、实战应用与常见陷阱,助你掌握这一核心数据结构,写出更高效、优雅的Python代码。
55 0
|
7月前
|
存储 人工智能 索引
Python数据结构:列表、元组、字典、集合
Python 中的列表、元组、字典和集合是常用数据结构。列表(List)是有序可变集合,支持增删改查操作;元组(Tuple)与列表类似但不可变,适合存储固定数据;字典(Dictionary)以键值对形式存储,无序可变,便于快速查找和修改;集合(Set)为无序不重复集合,支持高效集合运算如并集、交集等。根据需求选择合适的数据结构,可提升代码效率与可读性。
|
9月前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
346 2
|
网络协议 Java Linux
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
本文介绍了PyAV库,它是FFmpeg的Python绑定,提供了底层库的全部功能和控制。文章详细讲解了PyAV的安装过程,包括在Windows、Linux和ARM平台上的安装步骤,以及安装中可能遇到的错误和解决方法。此外,还解释了时间戳的概念,包括RTP、NTP、PTS和DTS,并提供了Python代码示例,展示如何获取RTSP流中的各种时间戳。最后,文章还提供了一些附录,包括Python通过NTP同步获取时间的方法和使用PyAV访问网络视频流的技巧。
2785 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
478 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
11月前
|
XML JSON API
如何使用Python将字典转换为XML
本文介绍了如何使用Python中的`xml.etree.ElementTree`库将字典数据结构转换为XML格式。通过定义递归函数处理字典到XML元素的转换,生成符合标准的XML文档,适用于与旧系统交互或需支持复杂文档结构的场景。示例代码展示了将一个简单字典转换为XML的具体实现过程。
185 1
|
JSON 数据格式 Python
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
本文介绍了如何使用Python的socket模块实现客户端到服务器端的文件传输,包括客户端发送文件信息和内容,服务器端接收并保存文件的完整过程。
554 1
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
|
关系型数据库 MySQL 数据库
Mysql学习笔记(四):Python与Mysql交互--实现增删改查
如何使用Python与MySQL数据库进行交互,实现增删改查等基本操作的教程。
174 1

热门文章

最新文章

推荐镜像

更多