找回密码
 会员注册
查看: 18|回复: 0

Python中的字典

[复制链接]

2万

主题

0

回帖

7万

积分

超级版主

积分
71619
发表于 2024-9-6 13:11:37 | 显示全部楼层 |阅读模式
目录1字典的定义2字典的键与值3字典的基本操作3.1获取与修改3.2字典的遍历3.3字典的操作3.3.1len()3.3.2in3.3.3常用方法1字典的定义字典(Dictionary)是Python中的一种数据类型,用于存储键值对(key-valuepairs)。它是可变的、无序的,且每个键必须是唯一的。字典使用花括号{}来表示,键和值之间使用冒号:分隔,键值对之间使用逗号分隔。字典可以通过一下三种方式创建:(1)通过花括号{}直接创建(2)通过方法创建(3)直接创建花括号并输入里面内容#字典的定义d0={}d1=dict()print(type(d1),print(type(d0)))#字典的格式是键(key)值(value)对#键与值之间使用冒号隔开多个键值对之间使用逗号隔开d2={"name":"小美","age":18,"address":"郑州",}print(d2)'运行运行2字典的键与值每个键必须是唯一的,而值可以是任意类型的对象,如字符串、整数、浮点数、列表等。d3={"key1":"value1","key2":100,"key3":3.14,"key4":False,"key5":None,"key6":[1,2,3],"key7"100,),"key8":{"key11":"value1","key12":[{"key1":15,"key2":"河南",},{"key3":23,"key4":"郑州"}]}}print(d3)'运行运行d4={"name":"小白",100:100,3.14:3.14,True:"这是布尔值",None:"这是个空",#[1,2,3]:"可变类型列表不可以作为键"():"这是元组",#{}:"字典不可以作为键"}print(d4)d4={"name":"小白",100:100,3.14:3.14,True:"这是布尔值",None:"这是个空",#[1,2,3]:"可变类型列表不可以作为键"():"这是元组",#{}:"字典不可以作为键"True:"我会覆盖",}print(d4)'运行运行3字典的基本操作3.1获取与修改(1)修改字典名[健名]=值,如果键已经存在则替换d0={"name":"小美","age":20}print(d0,id(d0))#设置键如果键已经存在则替换d0["name"]="小帅"print(d0,id(d0))#获取键所对应的值print(d0["name"],d0["age"])(2)获取字典名[键名]=值d0={"name":"小美","age":20}print(d0["name"])3.2字典的遍历(1)方式1遍历字典的所有键d1={"name":"小美","age":20,"addr":"郑州"}#方式1遍历字典的所有键forkeyind1.keys():print(key)(2)方式2遍历字典的所有值d1={"name":"小美","age":20,"addr":"郑州"}#方式2遍历字典的所有值forvalueind1.values():print(value)(3)方式3遍历字典的所有键值对有两种形式都可以比爱哪里键值对,第一种方式显示的是元组形式。d1={"name":"小美","age":20,"addr":"郑州"}#方式3遍历字典的所有键值对foritemind1.items():print(item)forkey,valueind1.items():print(key,value)3.3字典的操作3.3.1len()获取键值对个数d1={"name":"小美","age":20,"addr":"郑州"}#len获取字典键值对个数print(len(d1))3.3.2in判断一个键是否在字典中d2={"name":"小美","age":20,"addr":"郑州",}print("name"ind2,"sex"ind2)3.3.3常用方法(1)遍历d2={"name":"小美","age":20,"addr":"郑州",}#所有的键print(d2.keys())#所有的值print(d2.values())#所有的键值对print(d2.items())(2)删除a)pop根据键删除指定的键值对返回值d2={"name":"小美","age":20,"addr":"郑州",}#根据键删除指定的键值对返回值r=d2.pop("name")print(r,d2)b)popitem  删除最后一个写的键值对(python独有)d2={"name":"小美","age":20,"addr":"郑州",}#删除最后一个写的键值对(python独有)r=d2.popitem()print(r,d2)c)clear清空字典d2={"name":"小美","age":20,"addr":"郑州",}#清空d2.clear()print(d2)(3)修改a)setdefault()如果已经存在该键,则返回原始值;不存在则添加d3={"name":"小美","age":20,"addr":"郑州",}#如果已经存在该键,则返回原始值r=d3.setdefault("age",25)print(r,d3)#不存在则添加r=d3.setdefault("sex","女")print(r,d3)b)update()将新字典中所有键值对合并到原有字典d3={"name":"小美","age":20,"addr":"郑州",}#将新字典中所有键值对合并到原有字典r=d3.update({"sex":"N","age":23})#update无返回值print(r,d3)c)fromkeys()初始化一个字典#初始化一个字典d4=dict.fromkeys(["key1","key2","key3"],100)print(d4)(4)get根据键获取值,取不到返回None 、取不到也可以指定默认值字典(键)获取时, 如果取不到会报错d3={"name":"小美","age":20,"addr":"郑州",}#取不到返回Noneprint(d3.get("name1","小帅"))#取不到报错print(d3["name1"])
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2025-1-10 05:35 , Processed in 0.428692 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表