Python中的字典定义与操作

6 篇文章 0 订阅
1 篇文章 0 订阅

Python 字典是一种无序的键值对集合,其中键值唯一不能重复,且只能通过键(key)来访问数据,而不能像列表那样使用下标索引。字典是一种非常灵活的数据结构,适用于各种场景。下面根据代码总结一下字典的定义和常见操作。

1. 字典的定义

字典的定义有多种方式:

(1)使用大括号 {} 定义字典:

(2)使用 dict() 函数定义空字典:

输出内容:

2. 获取字典中的值

从字典中可以通过**键(key)**来获取对应的值(value):

输出结果:

王力宏的分数是:80

注意:使用键访问字典时,必须确保该键存在,否则会抛出 KeyError 异常。如果不确定键是否存在,可以使用 get() 方法获取值,避免错误:

3. 字典的嵌套

字典可以嵌套,即字典的值可以是另一个字典:

通过键访问嵌套字典的值时,需要按层级索引。

输出结果为:

4. 字典的增删改查

  • 新增元素:通过指定新键值对的方式直接添加:

  • 更新元素:若键已存在,则更新该键对应的值:

  • 删除元素:使用 pop() 方法删除指定键的键值对,并返回该值:

  • 清空字典:使用 clear() 方法可以清空字典中的所有元素:

输出结果:

5. 获取字典的键、值和项

  • 获取字典中的所有:使用 keys() 方法:

  • 获取字典中的所有:使用 values() 方法:

  • 获取字典中的所有键值对:使用 items() 方法:

6. 遍历字典

遍历字典的方式有两种:

  • 通过键遍历

输出结果:

  • 使用 items() 同时遍历键和值

7. 统计字典的元素数量

使用 len() 函数可以统计字典中键值对的数量:

8. 字典的特点

  • 键唯一性:字典的键必须是唯一的,如果同一个字典中使用相同的键定义不同的值,后者会覆盖前者。
  • 键不可变:字典的键必须是不可变的(如字符串、数字或元组),但值可以是任意类型,包括列表、字典等。
  • 无序性:Python 3.6 之前,字典是无序的;从 Python 3.7 开始,字典的键值对按照插入顺序存储。

总结

Python 的字典是一种灵活且强大的数据结构,能够通过键快速地访问和操作数据。常见的操作包括通过键获取值、增加新元素、更新或删除元素以及嵌套字典的使用。掌握这些基本操作后,可以高效地处理各种复杂的数据结构。

源码:

#字典的键值不能重复,只能唯一,且不能使用下标索引,只能用key
# 定义字典
my_dict={"张亮":99,"小王":98}

#定义空字典
my_dict2=dict()
my_dict3={}
print(f"字典1内容是:{my_dict},类型:{type(my_dict)}")
print(f"字典2内容是:{my_dict2},类型:{type(my_dict2)}")
print(f"字典3内容是:{my_dict3},类型:{type(my_dict3)}")

#从字典中基于key获取value
my_dict4={"王力宏":80,"张亮":70,"小花":90,"小王":50,}
print(f"王力宏的分数是:{my_dict4["王力宏"]}")

#字典的嵌套
stu_score_dict={
    "王力宏":{
        "语文":75,
        "数学":80
    },
    "周杰伦":{
        "语文":79,
        "数学":81
    },
    "林俊杰":{
        "语文":78,
        "数学":89
    }
}
print(f"学生考试信息{stu_score_dict}")

#从嵌套字典获取数据
#看一下周杰伦的语文信息
print(f"周杰伦的语文成绩{stu_score_dict["周杰伦"]["语文"]}")


#字典的相关操作:

my_dict = {"小明":68,"小汪":75,"大明":89}
#新增元素
my_dict["小美"]=99
print(f"新增元素后:{my_dict}")

#更新元素
my_dict["小明"]=80
print(f"更新元素后:{my_dict}")

#删除元素
score=my_dict.pop("小明")
print(f"字典删除了一个元素是{score},剩余元素的结果是:{my_dict}")

#清空元素,clear
my_dict.clear()
print(f"字典被清空了,内容是{my_dict}")

#获取全部的keys
my_dict={"小明":68,"小汪":75,"大明":89}
keys=my_dict.keys()
print(f"字典全部的keys是:{keys},keys的类型是{type(keys)}")

#遍历字典
#方式1 通过获取到全部key来遍历
for key in keys:
    print(f"字典的key是{key}")
    print(f"字典的value是:{my_dict[key]}")

#方式2 直接对字典进行for循环,每一次都是直接得到key
for key in my_dict:
    print(f"字典的key是{key}")
    print(f"字典的value是:{my_dict[key]}")

#统计字典内的元素数量,len()
num=len(my_dict)
print(f"字典中的元素数量有:{num}个")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值