"""集合的定义
- 无序的唯一对象集合
- 用大括号{}包围,对象相互之间使用逗号分隔
- 集合是动态的,可以随时添加或删除元素
- 集合是异构的,可以包含不同类型的数据
"""
- 集合的使用-创建
1. 通过使用{}填充元素
# 1. 通过使用{}填充元素 set1 = {1, 2, 3} print(type(set1), set1)
2. 通过构造方法 set(iterable)
# 2. 通过构造方法 set(iterable) # 从字符串中添加元素 set2 = set('hefeiwtt') print(type(set2), set2) # 从列表中添加元素 set3 = set([1, 2 ,3]) print(type(set3), set3) # 从元组中添加元素 set4 = set((1, 2, 3, 5)) print(type(set4),set4) # 不传,返回空的集合 set5 = set() print(type(set5),set5)
3. 通过集合推导式
# 3. 通过集合推导式 set6 = {i for i in range(5) if i % 2 ==0} print(type(set6), set6)
- 集合的使用-成员检测
"""集合的使用:成员检测 - in: 检查一个对象是否在集合中,如果在则返回True, 否则返回False - not in: 检查一个集合是否不包含某个元素。如果不在返回True, 否则返回False """ set7 = {1, 2, 5} # # 1. in print(1 in set7) # # 2. not in print(8 not in set7)
- 集合的方法-add()
"""集合方法add() - add(item): 将单个对象添加到集合中 - 入参:对象item - 返回:None """
"""add(item)""" set8 = set() set8.add(1) set8.add(2) set8.add("hefeiwtt") print(type(set8),set8)
- 集合的方法-update()
"""集合方法update() - update(iterable) - 批量添加来自可迭代对象中的所有元素 - 入参:可迭代对象iterable - 返回:None """
"""update(iterable)""" set9 = set() # 批量添加字符串中的元素 set9.update('hefeia') print(type(set9), set9) # 批量添加列表中的元素 set9.update([1, 2, 3]) print(type(set9), set9) # 批量添加元组中的元素 set9.update((7, 8, 9)) print(type(set9), set9) # 批量添加集合中的元素 set9.update({'p','y'}) print(type(set9), set9)
- 集合的方法-remove()
"""集合方法remove() - remove(item): 从集合中移除指定元素item - 入参:指定元素值 - 返回:None - 如果item不存在于集合中则会引发KeyError """
"""remove(item)""" # 1. 元素存在 set10 = {1, 2, 'hefei'} set10.remove(1) print(type(set10), set10) # 2. 元素不存在会报错 # set10.remove(100)
- 集合的方法-discard()
"""集合方法discard() - discard(item): 从集合中移除指定对象item - 入参:指定对象值 - 返回:None - 元素item不存在没影响,不会抛出KeyError错误 """
"""discard(item)""" # 1. 元素存在 set11 = {1, 2, 3,'hefei'} set11.discard(1) print(type(set11), set11) # 2. 元素不存在会报错 set11.discard(100)
- 集合的方法-pop()
"""集合方法pop() - pop(): 随机从集合中移除并返回一个元素 - 入参: 无 - 返回:被移除的元组 - 如果集合为空则会引发KeyError """
"""pop()""" set12 = {1, 2, 'hefeiwang'} set12.pop() print(type(set12), set12)
- 集合的方法-clear()
"""集合方法clear() - clear(): 清空集合,移除所有元素 - 入参: 无 - 返回:None """
"""clear()""" set13 = {1, 3, 4, 6} set13.clear() print(type(set13), set13)
- 集合的运算-交集
"""集合运算-交集 - 交集运算 - intersection() - 操作符: & """
"""intersection &""" a = {1, 3, 2} b = {5, 1, 4} # 1. 交集运算 print(a.intersection(b)) print(a & b)
- 集合的运算-并集
"""集合运算-并集 - 并集运算 - union() - 操作符: | """
"""union |""" c = {1, 3, 2} d = {5, 1, 4} print(a.union(b)) print(a | b)
- 集合的运算-差集
"""集合运算-差集 - 差集运算 - difference() - 操作符: - """
"""difference -""" e = {1, 3, 2} f = {5, 1, 4} print(a.difference(b)) print(a - b)
- 集合推导式
"""集合推导式 - 类似列表推导式,同样集合支持集合推导式 - 语法: {x for x in ... if ...} """
"""实例: 寻找hefeidd 与 hello world中共同的字母 """ # 传统方法 set14 = set() for s in 'hefeidd': if s in 'hello world': set14.add(s) print(set14) # 集合推导式 set15 = {s for s in 'hefeidd' if s in 'hello world'} print(set15)
标签:item,python,元素,print,集合,数据结构,type,set9 From: https://www.cnblogs.com/wwwwtt/p/16592094.html