python基础数据类型(四) 最后更新时间:2020年12月31日 #### 集合(set) ##### 集合介绍 集合是一个无序不重复元素的集,基本功能包括关系测试和消除重复元素。是可变数据类型。 集合数据类型的核心是去重。 ##### 创建集合 ###### - 用{}创建 集合使用{}框定元素,并以逗号分隔。其格式为: `name={key1,key2,key3……}` ###### - 用set()创建 使用set()方法来创建,括号中的为可迭代对象。 其格式为: `name=set(iterable)` 示例: ```python l = ["sword", "art", "online"] s_1 = {"刀剑神域"} s_2 = set(l) print(s_1) print(type(s_1)) print(s_2) print(type(s_2)) # ==>{'刀剑神域'} # ==> # ==>{'art', 'sword', 'online'} # ==> ``` ###### 注意: 直接使用{}不添加元素创建的为空字典,而不是空集合。 创建空集合需要使用`set()` ##### 集合添加元素 |方法|功能| |--|--| |set.add(key)|将元素(key)添加到集合(set)中| 示例: ```python l = ["sword", "art", "online"] s = {"刀剑神域"} s.add("sword") print(s) # ==>{'sword', '刀剑神域'} s.add(l) print(s) # ==>报错TypeError: unhashable type: 'list' ``` ###### 注意: - 可以重复添加,但是会自动去重,所以无效果。 - 不能添加可变对象。如:列表 ##### 集合更新 |方法|功能| |--|--| |set.update()|将另一个对象更新到已有的集合(set)中| 示例: ```python l = ["art", "online", "sao"] s_1 = {"刀剑神域"} s_2 = {"sword", "art", "online"} s_1.update(s_2) print(s_1) # ==>{'art', 'sword', '刀剑神域', 'online'} s_1.update(l) print(s_1) # ==>{'art', 'sword', 'online', 'sao', '刀剑神域'} ``` ###### 注意: 这一过程中同样会进行去重。 ##### 删除元素 |方法|功能| |--|--| |set.remove()|删除指定元素| |set.pop()|删除随机元素(无参数)| 示例: ```python s_1 = {"刀剑神域", "sword", "art", "online", "sao"} s_1.remove("sao") print(s_1) # ==>{'刀剑神域', 'online', 'art', 'sword'} s_2 = {"刀剑神域", "sword", "art", "online", "sao"} s_2.pop() print(s_2) # ==>{'online', 'sao', 'art', 'sword'} ``` ###### 注意: 集合不能取出某个元素,因为集合既不支持下标索引也不支持字典那样的通过键值对获取。
Comments | NOTHING