目标
掌握字典的常用操作
掌握集合的常用操作
第一部分 字典 字典就是一个个的键值对 {key: value},实现原理:根据key 计算 hash, 速度快。注意事项
key: 任意不可变对象,但不能是list;
value: 可以是任意对象。
字典是有序的
思考:为何字典的key不可以是list类型?
1. 三种创建方式 dic1 = {"sex" : 1 } dic2 = dict([('name' , 'simuty' ), ("age" , 1 )]) dic3 = dict(age=2 , name='python' , sex=1 ) print(dic1) print(dic2) print(dic3) ''' {'sex': 1} {'name': 'simuty'} {'age': 2} '''
2. 删除指定元素 del dic3['age' ]dic3.pop('name' ) print(dic3) dic3.clear() print(dic3) del dic3print(dic3) ''' {'age': 2, 'name': 'python', 'sex': 1} {'sex': 1} {} Traceback (most recent call last): File "dic.py", line 28, in <module> print(dic3) NameError: name 'dic3' is not defined '''
3. 合并 a_dic = {"k" : 1 } b_dic = {'k' : 2 , "x" : 3 } a_dic.update(b_dic) print(a_dic) print(b_dic.popitem()) print(b_dic) dic = {'k' : 2 , "x" : 3 } for key in dic: print(key, dic[key])
第二部分 集合 set集合是一个无序不重复元素的集,基本功能包括关系测试和消除重复元素。
集合使用大括号({})框定元素,并以逗号进行分隔。 创建一个空集合,必须用 set() 而不是 {} ,因为后者创建的是一个空字典。
1. 集合操作 set1 = {1 , 2 , 3 } set2 = {5 , 4 , 3 } print(set1 ^ set2) print(set1 - set2) print(set2 - set1) print(set1 & set2) print(set1 | set2) a = {1 , 2 , 3 , 4 } print(a) b = a.add(5 ) print(b)