集合
集合是无序、无索引的数据集。在Python中,集合用花括号包裹。
示例
创建集合:
thisset = {"自行车", "汽车", "高铁"}
print(thisset)
注意: 集合是无序的,因此项目将以随机顺序出现。
访问集合项目
不能通过索引来访问集合项,因为集合是无序的,这些项没有索引。
但是您可以使用for循环遍历集合项,使用in关键字查询集合中是否存在指定值。
示例
遍历集合,并打印值:
thisset = {"自行车", "汽车", "高铁"}
for x in thisset:
print(x)
示例
检查“汽车”是否出现在集合中:
thisset = {"自行车", "汽车", "高铁"}
print("汽车" in thisset)
修改项目
集合一旦创建,就不能更改,但是可以添加新项。
添加项目
要向集合中添加一项,使用add()方法。
若要向集合添加多个项,使用update()方法。
示例
使用add()方法向集合添加一个项:
thisset = {"自行车", "汽车", "高铁"}
thisset.add("飞机")
print(thisset)
示例
使用update()方法向一个集合添加多个项:
thisset = {"自行车", "汽车", "高铁"}
thisset.update(["飞机", "轮船", "电动车"])
print(thisset)
获取集合长度
要确定一个集合有多少项,可以使用len()方法。
示例
获取集合长度:
thisset = {"自行车", "汽车", "高铁"}
print(len(thisset))
删除项目
要删除集合中的项,使用remove()或discard()方法。
示例
使用remove()方法删除“汽车”:
thisset = {"自行车", "汽车", "高铁"}
thisset.remove("汽车")
print(thisset)
注意: 如果要删除的项不存在,remove()将引发错误。
示例
使用discard()方法删除“汽车”:
thisset = {"自行车", "汽车", "高铁"}
thisset.discard("汽车")
print(thisset)
注意: 如果要删除的项不存在,discard()不会引发错误。
您还可以使用pop()方法删除项,但该方法只删除最后一项。因为集合是无序的,所以您不知道删除了哪些项。
pop()方法的返回值是已删除的项。
示例
使用pop()方法删除最后一项:
thisset = {"自行车", "汽车", "高铁"}
x = thisset.pop()
print(x)
print(thisset)
注意: 集合是无序的,所以当使用pop()方法时,您将不知道删除了哪个项。
示例
clear()方法清空集合:
thisset = {"自行车", "汽车", "高铁"}
thisset.clear()
print(thisset)
示例
del关键字将删除整个集合,包括集合自身:
thisset = {"自行车", "汽车", "高铁"}
del thisset
print(thisset)
set()构造方法
也可以使用set()构造方法来创建集合。
示例
使用set()构造方法创建集合:
thisset = set(("自行车", "汽车", "高铁")) # 注意双圆括号
print(thisset)
集合方法
Python有一组可以在set上使用的内置方法。
方法
描述
add()
向集合中添加元素
clear()
从集合中移除所有元素
copy()
返回集合的副本
difference()
返回一个集合,该集合包含两个或多个集合之间的差别项目
difference_update()
移除此集合中与另一个集合相同的项
discard()
删除指定项
intersection()
返回一个集合,它是另外两个集合的交集
intersection_update()
移除此集合中其他集合中不存在的项
isdisjoint()
返回两个集合是否有交集
issubset()
返回另一个集合是否包含此集合
issuperset()
返回此集合是否包含另一个集合
pop()
从集合中移除一个元素
remove()
移除指定的元素
symmetric_difference()
返回具有两个集合的对称差异的集合
symmetric_difference_update()
插入来自这个集合和另一个集合的对称差异
union()
返回包含集合并集的集合
update()
使用此集合和其他集合的并集更新集合