Python字典的基本概念_Python自学第二十六节
2023-02-18 16:43:01 时间
字典是另一种可变容器模型,且可存储任意类型对象。字典包含键(左侧)和值(右侧)两部分,每个键和值之间用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 。字典中的元素没有索引编号,也不能进行切片,根据键去找值,比如要引用 services 字典中第一个元素的值,使用 services['ftp']。
>>> services = {'ftp':21,'ssh':22,'http':80} #ftp为键,21为值
>>> services['ssh']
22
>>> services['http']
80
>>> services['http'] = 8080 #键是不能修改的,可以修改值
>>> services
{'ftp': 21, 'ssh': 22, 'http': 8080}
- 因为字典是以键进行取值,所以字典中的键是唯一的,而且不可修改。值是可以修改的,并且是原地操作直接修改源字典的内容。
- 因为键不可修改,所以只能使用一些不可变序列来作为字典的键,通常使用字符串作为键。
- 字典的优点具有极快的查找速度,在处理大批量数据时更加推荐使用字典。
字典的基本用法
- 字典的常规用法与其他对象差不多。
- 往字典中添加新元素:
- 如果指定的键不存在,那么是添加新元素。
- 如果指定的键已存在,那么是修改元素值。
>>> services['https'] = 443 #增加新的元素,https之前不存在
>>> services
{'ftp': 21, 'ssh': 22, 'http': 8080, 'https': 443}
>>> services['http'] = 80 #http已经存在,则进行修改
>>> services
{'ftp': 21, 'ssh': 22, 'http': 80, 'https': 443}
字典基本的函数和方法
字典的基本函数和方法:keys()方法、values()方法、items()方法
keys()方法可以返回字典中所有的键
>>> services.keys()
dict_keys(['ftp', 'ssh', 'http', 'https'])
values()方法可以返回字典中所有的值
>>> services.values()
dict_values([21, 22, 80, 443])
items()方法返回字典中所有的元素,整体列表显示,列表里的每个元素为一个元组
>>> services.items()
dict_items([('ftp', 21), ('ssh', 22), ('http', 80), ('https', 443)])
对字典进行检索
- in运算符智能检测字典中是否存在指定的键,而不能检测是否存在指定的值;
- 要检测字典中是否存在指定的值,可以结合 values() 方法;
>>> 'http' in services #查看是否存在'http'键
True
>>> 80 in services #查看是否存在 80 的值,是查不到值的
False
>>> 80 in services.values() #配合values()方法进行查看即可
True
字典的遍历
要对字典进行遍历,默认是对键进行遍历
>>> for i in services:
... print(i)
...
ftp
ssh
http
https
对值进行遍历的两种办法
>>> for i in services: #i取值为键
... print(services[i]) #services[i]即可转换为字典中每个元素的值
...
21
22
80
443
>>> for i in services.values(): #i取值直接为值
... print(i)
...
21
22
80
443
对键和值通时进行遍历
>>> for i in services: #取值为键
... print(f'{i}:{services[i]}') #字符串格式化,f' {i}'即为键 :{services[i]即为键的值}'
...
ftp:21
ssh:22
http:80
https:443
方法二
>>> for m,n in services.items(): #定义两个循环变量在services.items()进行取值
... print(f'{m}:{n}') #字符串格式化输出如下
...
ftp:21
ssh:22
http:80
https:443
相关文章
- [oeasy]python0031_挂起进程_恢复进程_进程切换
- Python自动下载QQ空间相册
- Wing Pro 9 for Mac(Python集成开发工具)
- 干货 | 轮廓逼近原理与OpenCV应用(附Python-OpenCV文档下载)
- 放弃 Python 和 Electron,选择 aardio 编写批量视频合并软件
- 利用Python3写个爬虫脚本,爬取纯欲小姐姐的图片壁纸,隔壁的前端兄弟馋哭了,求着我要脚本
- 【免杀】一种python反序列化免杀方式
- 根据经纬度坐标获得省市区县行政区划城市名称,自建数据库 java python php c# .net 均适用
- 使用Python的http.server实现一个简易的Web Api对外提供HanLP拼音转换服务
- 【团队效率提升】Python-PyWebIO介绍
- 用Python提取网页中的超链接
- 在Linux/CentOS中编译安装Python
- 用Python3提取网页中的超链接
- Python cos sdk
- Python字典Dictionary
- Python基础(十三):集合的详细讲解
- Python基础(十四):公共操作的讲解
- Python基础(十五):推导式的讲解
- Python基础(十六):函数的初步认识
- Python基础(十七):函数的深入了解