python元组
元组不可修改 只读
元组 a= (1,2,3,4)
python字典
字典由键和值组成表示为:字典={键:值}中间用,隔开
字典的键只可是不可变类型
不可变类型:整型、字符串、元组
可变类型: 列表、字典
字典存在两大特点:无序、键唯一
字典的相关操作
1 # 创建字典 2 dict1 = {‘name‘: ‘黄磊‘, ‘age‘: 22, ‘hobby‘: ‘python‘} 3 print(dict1) 4 # 5 b = dict(zip([‘one‘, ‘two‘, ‘three‘], [1, 2, 3])) 6 print(list(zip([‘one‘, ‘two‘, ‘three‘], [1, 2, 3]))) 7 print(b) 8 # 9 dict2 = dict(((‘name‘, ‘黄磊‘), (‘age‘, 22))) 10 print(dict2) 11 12 """字典的增删改查""" 13 # 增加字典 14 15 dict1 = {‘name‘: ‘黄磊‘, ‘hobby‘: ‘python‘} 16 dict1[‘name‘] = ‘张三‘ 17 print(dict1) 18 19 20 # setdefault方法当字典 有这个键就返回这个键的值 没有这个键就添加并返回相应的键值 21 ret1 = dict1.setdefault(‘name‘, ‘李四‘) 22 ret2 = dict1.setdefault(‘age‘, 22) 23 print(ret1) 24 print(ret2) 25 print(dict1) 26 27 """查找""" 28 dict1 = {‘name‘: ‘黄磊‘, ‘age‘: 22, ‘hobby‘: ‘python‘} 29 print(dict1[‘name‘]) 30 31 # key()方法为告知字典中的所有的键值 但是数据类型是一个新的dict_keys 32 print(dict1.keys()) 33 # 可以通过list()方法将key()的数据类型转换成list 34 print(list(dict1.keys())) 35 # values()方法为告知字典中的所有的值 但是数据类型是一个新的dict_values 36 print(dict1.values()) 37 # 可以通过list()方法将values()的数据类型转换成list 38 print(list(dict1.values())) 39 40 """修改""" 41 dict1 = {‘name‘: ‘黄磊‘, ‘age‘: 22, ‘hobby‘: ‘python‘} 42 43 # 通过键进行修改对应的值 44 dict1[‘name‘] = ‘张三‘ 45 print(dict1) 46 # update()方法将另一个字典的内容放入到原字典中 如果有重复的键 就更新对应的值 如果没有则添加 47 dict2 = {‘name‘: ‘管敏‘, ‘age‘: 23, ‘hobby‘: ‘python‘, ‘tall‘: ‘160‘} 48 dict1.update(dict2) 49 print(dict1) 50 51 """删除""" 52 dict1 = {‘name‘: ‘黄磊‘, ‘age‘: 22, ‘hobby‘: ‘python‘} 53 # 清空字典 54 dict1.clear() 55 print(dict1) 56 # 删除对应的键 值对 57 dict1 = {‘name‘: ‘黄磊‘, ‘age‘: 22, ‘hobby‘: ‘python‘} 58 del dict1[‘name‘] 59 print(dict1) 60 # 删除键 值对并给出这个键的返回值 61 ret = dict1.pop(‘age‘) 62 print(ret) 63 print(dict1) 64 65 # 随机删除 并以元组的方式返回 66 a = dict1.popitem() 67 print(a) 68 print(dict1) 69 70 # 删除整个字典 71 del dict1 72 73 74 """字典的其他涉及到方法的操作""" 75 76 # fromkeys()方法是将后面一个值作为每一个键的值 一般不进行使用 77 dict2 = dict.fromkeys([‘name1‘, ‘name2‘, ‘name3‘], [‘张三‘]) 78 print(dict2) 79 # 在存在两个值是修改时不好操作 会改变和找到的那个值一样的所有的值 80 dict3 = dict.fromkeys([‘name1‘, ‘name2‘, ‘name3‘], [‘张三‘, ‘李四‘]) 81 print(dict3) 82 dict3[‘name2‘][1] = ‘王五‘ 83 print(dict3) 84 85 # 字典的嵌套 86 dict4 = { 87 ‘花店‘: {‘牡丹花‘: [‘红的‘, ‘蓝的‘], ‘玫瑰花‘: ‘红的‘}, 88 ‘烟酒店‘: {‘海之蓝‘: [‘好喝‘, ‘不好喝‘], ‘天之蓝‘: ‘还可以‘} 89 } 90 dict4[‘花店‘][‘牡丹花‘][0] = ‘粉的‘ 91 print(dict4) 92 93 # 字典的排序 使用sorted()方法进行排序 按键排序 只有values是按值排序 94 dict5 = {1: ‘222‘, 3: ‘111‘, 2: ‘444‘} 95 print(sorted(dict5)) 96 print(sorted(dict5.keys())) 97 print(sorted(dict5.values())) 98 print(sorted(dict5.items())) # item是(键 :值)对的意思 99 100 """字典的遍历""" 101 dict6 = {‘name‘: ‘huanglei ‘, ‘age‘: 22, ‘hobby‘: ‘python‘} 102 for i in dict6: 103 print(i) 104 105 106 # 取出键和值 这个方法最有效 最好用 107 for i in dict6: 108 print(i, dict6[i]) 109 110 111 # 以下方式效率很低,不推荐使用 112 for i in dict6.items(): 113 print(i) 114 for i, v in dict6.items(): # 添加一个v去除括号 115 print(i, v)
原文:https://www.cnblogs.com/xiaobai26/p/13673419.html