1.字典类型的定义和使用
字典类型是“映射”的体现,映射其实就是一种键(索引)和值(数据)的对应。
键值对:键是数据索引的扩展,字典是键值对的集合,键值对之间无序。
我们可以采用大括号{}和dict()函数来创建字典,键值对用冒号:表示。(见如下代码)
#采用大括号来创建字典 d={"中国" : "北京" , "英国" : "伦敦" , "法国" : "巴黎"} print(d) 输出结果如下: {'中国': '北京', '英国': '伦敦', '法国': '巴黎'}
#采用dict()函数来创建 T1=[("中国" , "北京") , ("英国" , "伦敦") , ("法国" , "巴黎")] d=dict(T1) print(d) 输出结果如下: {'中国': '北京', '英国': '伦敦', '法国': '巴黎'}
在这里要说明一点的是,字典中的键是唯一的,并且是不可变的,因此列表不能作为字典的键,而元组可以作为字典的键。我们来看下面这两个例子👇👇👇
#用元组来作为字典的键 d1={(1,2) : "a" , (3,4) : "b"} print(d1) 输出结果如下: {(1, 2): 'a', (3, 4): 'b'}
#用列表来作为字典的键 d1={[1,2] : "a" , [3,4] : "b"} print(d1) 输出结果如下: Traceback (most recent call last): File "D:/GameDownload/Python/python代码体验区/python基础1.py", line 1, in <module> d1={[1,2] : "a" , [3,4] : "b"} TypeError: unhashable type: 'list' #程序报错!!!
我们再来说一下字典的访问,更新,遍历和删除操作!!!👇👇👇
#访问字典元素 d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} print(d1["Lisa"]) 输出结果如下: 90 #更新字典元素 d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} d1["Lisa"]=95 print(d1["Lisa"]) 输出结果如下: 95 #遍历字典元素 d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} for k in d1 : print(k,d1[k]) 输出结果如下: Adam 85 Lisa 90 Bart 75 Paul 90 #删除字典元素 d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} del d1["Lisa"] print(d1) 输出结果如下: {'Adam': 85, 'Bart': 75, 'Paul': 90} 该命令也可以删除整个字典:del d1
2.字典处理函数及方法
以上就是我们常用的几种字典函数及方法,除此之外,我们还会介绍几种方法,那么我们来看下面的例子吧👇👇👇
以上就是我们常用的几种字典函数及方法,除此之外,我们还会介绍几种方法,那么我们来看下面的例子吧👇👇👇
#d.keys() d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} print(d1.keys()) 输出结果如下: dict_keys(['Adam', 'Lisa', 'Bart', 'Paul'])
#d.values() d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} print(d1.values()) 输出结果如下: dict_values([85, 90, 75, 90])
#d.items() d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} print(d1.items()) 输出结果如下: dict_items([('Adam', 85), ('Lisa', 90), ('Bart', 75), ('Paul', 90)])
#k in d d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} print("Tom" in d1) 输出结果如下: False
#del d[k] d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} del d1["Adam"] print(d1) 输出结果如下: {'Lisa': 90, 'Bart': 75, 'Paul': 90}
#d.get() d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} score1=d1.get("Adam") print(score1) #存在,则返回这个键对应的值 score2=d1.get("Tom") print(score2) #不存在,输出None score3=d1.get("Tom" , "该学生不在这个字典中") print(score3) #键不存在,就输出get后面的内容 输出结果如下: 85 None 该学生不在这个字典中
#d.copy() d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} d2=d1.copy() print(d2) 输出结果如下: {'Adam': 85, 'Lisa': 90, 'Bart': 75, 'Paul': 90}
#d.clear() d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} d1.clear() print(d1) 输出结果如下: {}
#d.pop() d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} print(d1) x=d1.pop("Adam") print(x) #取出键Adam对应的值85 print(d1) #输出将这个值取出之后的字典元素 输出结果如下: {'Adam': 85, 'Lisa': 90, 'Bart': 75, 'Paul': 90} 85 {'Lisa': 90, 'Bart': 75, 'Paul': 90} #与d.get()的区别就是, #在d.get()方法中使用之后的字典元素对应的键值对仍然存在, #而在d.pop()方法使用之后的字典元素对应的键值对就不存在了。
#d.popitem() d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} print(d1) x=d1.popitem() print(x) print(d1) 输出结果如下: {'Adam': 85, 'Lisa': 90, 'Bart': 75, 'Paul': 90} ('Paul', 90) {'Adam': 85, 'Lisa': 90, 'Bart': 75} #这个与d.pop类似,只是d.popitem()方法是从字典中随机取出一个键值对
#len(d) d1={"Adam" : 85 , "Lisa" : 90 , "Bart" : 75 , "Paul" : 90} x=len(d1) print(x) #返回字典d1中元素(键值对)的个数 输出结果如下: 4
那么以上就是博主总结的Python语言中字典的一些操作方法,喜欢的朋友们可以点波关注哦!!!