python3之字典的常用方法练习
字典的常用方法练习
1 #coding:utf-8 2 3 #字典常用方法练习 4 5 #创建字典的两种方法 6 dict1 = {"k1":"v1","k2":"v2"} 7 dict2 = dict(k3="v3",k4="v4") 8 print("第一种创建结果为:",dict1) 9 print("第二种创建结果为:",dict2) 10 11 #清空字典内所有元素 12 print("dict2字典被clear了:",end="") 13 print(dict2.clear()) 14 15 #字典的复制 16 dict_copy = dict1.copy() #浅拷贝 17 print("dict_copy是从dict1复制过来的:",end="") 18 print(dict_copy) 19 20 #用传入的序列和值创建新的字典,值可选,默认为None 21 dict_new = dict.fromkeys(("a1","a2","a3"),5) 22 print("利用fromkeys创建的新字典为:",dict_new) 23 24 #通过键获取值的两种方法: 25 print("利用数组下标获取:",dict1["k1"]) 26 print("利用get方法获取:",dict1.get("k1")) 27 #两种方法的区别:利用下标获取,下标越界时系统抛异常,利用get则直接返回None 28 #print("越界的下标获取:",dict1["k3"]) 29 print("越界的下标获取:",dict1.get("k3")) 30 31 #获取字典所有键、值和键值对 32 print("所有键:",dict1.keys()) #dict_keys(['k1', 'k2']) 33 print("所有值:",dict1.values()) #dict_values(['v1', 'v2']) 34 print("所有键值对:",dict1.items()) #dict_items([('k1', 'v1'), ('k2', 'v2')]) 35 #应用 36 for k,v in dict1.items(): 37 print("键为:",k,"值为:",v) 38 39 #删除指定键值对,最少传一个参数: 40 dict1.pop("k1") 41 print("键为k1的被删除后:",dict1) 42 43 #随机删除字典中的一个键值对,但个人测试N次,都是删"d":"4"。。。有没有大神给讲解下 44 dict3 = {"a":"1","b":"2","c":"3","d":"4"} 45 print("未用popitem删除之前:",dict3) 46 dict3.popitem() 47 print("用popitem删除之后:",dict3) 48 49 #查找指定键所对应的值,存在返回值,不存在则创建并赋默认值 50 print("查找的键存在时:",dict3.setdefault("a")) 51 print(dict3.setdefault("这个键原来是不存在的","查找完就被添加进去了")) 52 #查看dict3的变化 53 print("dict3的变化:",dict3) 54 55 dict4 = {"name":"lee","age":12} 56 dict5 = {"sex":"man"} 57 #利用update实现对现有字典内容的更新 58 print("dict4被update之前:",dict4) 59 dict4.update({"age":20}) #注意传入的参数为字典 60 print("dict4被update之后(更新数据):",dict4) 61 dict4.update(dict5) 62 print("更新内容不在现有字典内,则为添加操作:",dict4)