集合是另一个重要的Python数据结构。
我们可以说它们像图元一样工作,但它们不是有序的,而且它们是可变的。 或者我们可以说它们像字典一样工作,但它们没有键。
它们也有一个不可变的版本,叫做frozenset 。
你可以用这种语法创建一个集合。
当你把它们看作是数学集合时,集合工作得很好。
你可以与两个集合相交。
set1 = {"Roger", "Syd"}
set2 = {"Roger"}
intersect = set1 & set2 #{'Roger'}
你可以创建两个集合的联盟。
set1 = {"Roger", "Syd"}
set2 = {"Luna"}
union = set1 | set2
#{'Syd', 'Luna', 'Roger'}
你可以得到两个集合之间的差值。
set1 = {"Roger", "Syd"}
set2 = {"Roger"}
difference = set1 - set2 #{'Syd'}
你可以检查一个集合是否是另一个集合的超集(当然还有一个集合是否是另一个集合的子集)
set1 = {"Roger", "Syd"}
set2 = {"Roger"}
isSuperset = set1 > set2 # True
你可以用len() 全局函数来计算一个集合中的项目。
names = {"Roger", "Syd"}
len(names) # 2
你可以通过将集合传递给list() 构造函数,从集合中的项目获得一个列表。
names = {"Roger", "Syd"}
list(names) #['Syd', 'Roger']
你可以用in 操作符检查一个项目是否包含在一个集合中。
print("Roger" in names) # True