[Python] 字典dict常用方法总结

目录

一、汇总表

二、代码演示

三、执行结果


一、汇总表

序号功能方法
1定义字典{key:value,key:value...}
2定义空字典{} 或 dict()
3通过key查找对应的value字典[key]
4定义嵌套字典key不允许是dict,value可以是
5添加/修改元素字典[key] = value
6删除元素pop(key)
7清空字典clear()
8获取全部的keykeys()
9字典的遍历

for x in 字典

for x in 字典.keys()

for x in 字典.values()

10统计字典大小len(字典)

二、代码演示

"""
    演示字典dict的相关操作
"""
​
# 1、定义字典
my_dict = {"张无忌":99,"杨过":60,"郭靖":86}
print("1、",my_dict)
​
# 2、定义空字典
empty_dict1 = {}
empty_dict2 = dict()
print("2、",empty_dict1)
print("2、",empty_dict2)
​
# 3、通过key查找对应的 value 字典[key]
score1 = my_dict["张无忌"]
score2 = my_dict["杨过"]
print(f"3、张无忌的分数是:{score1}")
print(f"3、杨过的分数是:{score2}")
​
# 4、定义嵌套字典
my_dict = {"王力宏":{"语文":77,"数学":66,"英语":33},
           "周杰伦":{"语文":88,"数学":86,"英语":55},
           "林俊杰":{"语文":99,"数学":96,"英语":66}}
print("4、学生的考试成绩信息为:",my_dict)
print("4、王力宏的数学成绩是:",my_dict["王力宏"]["数学"]) # 通过多级[]间址来找到想要的value
print("4、林俊杰的语文成绩是:",my_dict["林俊杰"]["语文"])
​
​
# 5、添加/修改元素 字典[key] = value 就可以完成添加或者元素
# 他会先检查这个key是否已存在,若存在就对其修改,若不存在则将这一对k-v加入字典
my_dict = {"张无忌":99,"杨过":60,"郭靖":86}
my_dict['王二'] = 100 # ‘王二’是不存在的key,所以会添加
print(f"5、my_dict = {my_dict}")
my_dict['张无忌'] = 100 # ”张无忌“是已存在的key,所以会对其进行修改,99->100
print(f"5、my_dict = {my_dict}")
​
# 6、删除元素 pop(key) 获得该key对应的value,同时将这对k-v从字典中删除
my_dict = {"张无忌":99,"杨过":60,"郭靖":86}
sc = my_dict.pop("杨过")
print(f"6、杨过的成绩被移除,他的成绩为:{sc}")
​
# 7、清空字典 clear()
my_dict.clear()
print(f"7、清空后my_dict = {my_dict}")
​
# 8、获取全部的key  keys() 返回一个 <class 'dict_keys'> (应该可视为集合)
# 这个方法可以帮我们完成对字典的遍历
my_dict = {"张无忌":99,"杨过":60,"郭靖":86}
keys = my_dict.keys()
print(f"8、获取到的keys为:{keys},类型是 {type(keys)}")
​
# 9、字典的遍历
# (1)通过对字典的key集做for-each遍历
for key in my_dict.keys():
    print(f"9.1、当前key = {key}, value = {my_dict[key]}")
​
# (2)直接对字典做for-each其实取出的默认就是key
for o in my_dict:
    print(f"9.2、取出的元素为 {o}") # 结果取出的元素是 张无忌 杨过 郭靖

# (3) 还可以直接对值(value)集合进行遍历
for val in my_dict.values():
    print(f"9.3、取出的元素为 {val}") # 结果取出的元素是 99 60 86
​
# 所以说这2种方法其实是等价的,取出的o就是key
​
# 10、统计集合大小(元素数量) len(字典)
print(f"10、my_dict = {my_dict}, 它的大小为:{len(my_dict)}")

三、执行结果

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值