Python 常用集合类型的增删改查分合 list tuple dict set
列表 List https://www.runoob.com/python3/python3-list.html
定义:list1 = [1, 2, 3, 4, 5 ] # 值可重复
读取:a = list1[2] # 0 是第一个,-1 表示最后一个,-2 倒数第二个
截取:new_list = list1[2:4] # 不包括右边界的元素,如果右边界超出长度,不会出现 index out of range, 会获取右边全部
增加: list1.append(6) # 添加到最后(最右边)
修改:list1[0] = 999
删除:del(list1[4])
合并:new_list = list1 + list2
重复:new_list = list1 * 3
元组 Tuple https://www.runoob.com/python3/python3-tuple.html
定义:tuple1 = (1,) tuple2=(1,2,'a','b') # 值可重复
读取:a = tuple1[2] # 0 是第一个,-1 表示最后一个,-2 倒数第二个
截取:new_tuple = tuple1[2:4] # 不包括右边界的元素,如果右边界超出长度,不会出现 index out of range, 会获取右边全部
增加: tuple1 = tuple1 + (6,) # 利用合并的方法,添加到最后(最右边)
修改:元组内元素不能修改
删除:元组内元素不能删除,但可以删除整个元组: del(tuple1)
合并:new_tuple = tuple1 + tuple2
重复:new_tuple = tuple1 * 3
字典 Dict https://www.runoob.com/python3/python3-dictionary.html
定义:dict1 = {key1 : value1, key2 : value2, key3 : value3 } # key 不可重复,否则会覆盖旧值. Key 可以是数字、字符串,或元组
读取:dict1['Name']
增加: dict1['Name'] = "John"
修改:dict1['Age'] = 8
删除:del dict1['Name']
清空:dict1.clear()
合并:两种方法:1)dict1.update(dict2) # dict2 的键值对会更新合并到 dict1 中;2)new_dict = {**dict1, **dict2} , 则 dict1 和 dict2 合并结果在 new_dict 中,原来的 dict1 dict2 不变。若有重复 key, 则 dict2 中的值会覆盖 dict1 的值。
集合 Set https://www.runoob.com/python3/python3-set.html
定义:set1 = {value1, value2} set2 = set()
读取:无法通过索引读取,只能判断是否存在元素: a in set1
增加: set1.add(value3) set2.update(x) # x 可以是 list, tuple, dict
删除:set1.remove(value3)
清空:set1.clear()
差集:set1 - set2 # 返回仅存在于 set1 的元素
并集:set1 | set2 # 即 set1 加上 set2 的全部元素(全集)
交集:set1 & set2 # 同时存在于两个集合的元素
补集的并集,也叫 交集的补集: set1^set2 # 即 (set1|set2) - (set1&set2),返回所有只存在于单边集合里的元素