当前位置: 首页 > news >正文

Python 字典详解(dict)

文章目录

  • 1 概述
    • 1.1 性质
  • 2 常用方法
    • 2.1 以列表返回所有键:keys()
    • 2.2 以列表返回所有值:values()
    • 2.3 以列表返回所有键值对:items()
    • 2.4 返回键对应的值:get()
    • 2.5 添加键值对:setdefault()
    • 2.6 修改键值对:dict[]
    • 2.7 删除键值对:pop()
    • 2.8 清空字典内所有元素:clear()
    • 2.9 删除字典:del
    • 2.10 更新字典:update()

1 概述

1.1 性质

  • 无序。元素没有顺序
  • 不可重复。元素不能重复,若出现重复,则最后的一个键值对会替换前面的
  • 可变。元素可以被修改
dict1 = {'name': '张三', 'age': 18, 'age': 19}print(type(dict1))  # <class 'dict'>
print(dict1)  # {'name': '张三', 'age': 19}

2 常用方法

2.1 以列表返回所有键:keys()

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}print(dict1.keys())
# dict_keys(['name', 'age', 'sex'])

2.2 以列表返回所有值:values()

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}print(dict1.values())
# dict_values(['张三', 18, '女'])

2.3 以列表返回所有键值对:items()

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}for i in dict1.items():print(i)
# ('name', '张三')
# ('age', 18)
# ('sex', '女')for key, value in dict1.items():print(f'key: {key}, value: {value}')
# key: name, value: 张三
# key: age, value: 18
# key: sex, value: 女

2.4 返回键对应的值:get()

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}print(dict1.get('name'))# 注意,若未找到,则报错
print(dict1.get('birthday'))

2.5 添加键值对:setdefault()

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}# 若 key 不存在时,设置该 键值对
dict1.setdefault('id_card', 123456789)print(dict1)
# {'name': '张三', 'age': 18, 'sex': '女', 'id_card': 123456789}

2.6 修改键值对:dict[]

  • 字典中,key 是唯一的,且无法被修改。只能修改 value
dict1 = {'name': '张三', 'age': 18, 'sex': '女'}if 'name' in dict1.keys():dict1['name'] = '李四'print(dict1)

2.7 删除键值对:pop()

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}dict1.pop('sex')print(dict1)
# {'name': '张三', 'age': 18}

2.8 清空字典内所有元素:clear()

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}# 清空字典内的所有元素
dict1.clear()
print(dict1)
# {}

2.9 删除字典:del

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}# 删除 name 的键值对。等同于 pop('name')
del dict1['name']
print(dict1)# 删除整个字典
del dict1
print(dict1)
# NameError: name 'dict1' is not defined

2.10 更新字典:update()

dict1 = {'name': '张三', 'age': 18, 'sex': '女'}
dict2 = {'id_card': 123456789}# 在 dict1 中追加 dict2
dict1.update(dict2)print(dict1)
# {'name': '张三', 'age': 18, 'sex': '女', 'id_card': 123456789}
http://www.lryc.cn/news/253775.html

相关文章:

  • IPoIB在国产并行系统上的实现与优化
  • 东南大学与OpenHarmony携手共建开源生态,技术俱乐部揭牌成立并迎来TSC专家进校园
  • NPU、CPU、GPU算力及算力计算方式
  • 华清远见嵌入式学习——C++——作业6
  • k8s安装学习环境
  • RepidJson将内容写入文件简单代码示例
  • golang构建docker镜像的几种方式
  • golang使用sip协议 用户名和密码注册到vos3000
  • 第4章 互联网
  • 【JavaWeb】前端工程化(VUE3)
  • JAVA基础知识:异常处理
  • PostGIS学习教程十:空间索引
  • LeetCode 13 罗马数字转整数
  • 【动态规划】LeetCode2111:使数组 K 递增的最少操作次数
  • SpringCloud面试题——Nacos
  • leetcode:统计感冒序列的数目【数学题:组合数含逆元模版】
  • 外贸建站平台工具推荐?做海洋建站的平台?
  • 【智能家居】三、添加语音识别模块的串口读取功能点
  • 物联网开发(一)新版Onenet 基础配置
  • qt/c/c++文件操作总结
  • 表示你的shell未被正确配置以使用conda activate--换成清华源anaconda
  • VT-MRPA1-151-1X/V0/0控制2FRE16模块式模拟放大器
  • 无需公网IP实现公网远程访问本地WebDAV服务
  • 远程服务器QEMU+Ubuntu+GRUB+VNC最佳实践
  • macbook电脑运行缓慢和卡顿内存怎么清理了?
  • 优化用户直播体验:第三方美颜SDK的前沿技术
  • UE4/UE5 材质实现带框环形进度条
  • Docker 环境中 Spring Boot 应用的 Arthas 故障排查与性能优化实战
  • Django 用户验证与权限管理
  • 二手物品交易系统源码小程序H5闲置物品转让APP成品