原文: https://pythonspot.com/python-set/

Python 集合

Python 中的集合是对象的集合。 集合在 Python 2.4 和更高版本中可用。 它们与列表或元组的不同之处在于它们是根据数学集合建模的。

集合示例

要创建一个集合,我们使用set()函数。

  1. #!/usr/bin/env python
  2. x = set(["Postcard", "Radio", "Telegram"])
  3. print(x)

如果我们多次添加相同的item元素,则会将其删除。 一个集合不能多次包含相同的元素。

  1. #!/usr/bin/env python
  2. x = set(["Postcard", "Radio", "Telegram", "Postcard"])
  3. print(x)

简单记法

如果您使用 Python 2.6 版或更高版本,则可以使用简化的符号:

  1. #!/usr/bin/env python
  2. x = set(["Postcard", "Radio", "Telegram"])
  3. print(x)
  4. y = {"Postcard","Radio","Telegram"}
  5. print(y)

集合方法

从集合清除元素

要从集合中删除所有元素:

  1. #!/usr/bin/env python
  2. x = set(["Postcard", "Radio", "Telegram"])
  3. x.clear()
  4. print(x)

将元素添加到集合中

要将元素添加到集合中:

  1. #!/usr/bin/env python
  2. x = set(["Postcard", "Radio", "Telegram"])
  3. x.add("Telephone")
  4. print(x)

将元素从集合中删除

要将元素从集合中删除:

  1. !/usr/bin/env python
  2. x = set(["Postcard", "Radio", "Telegram"])
  3. x.remove("Radio")
  4. print(x)

两个集合之间的差异

要查找两个集合之间的差异,请使用:

  1. #!/usr/bin/env python
  2. x = set(["Postcard", "Radio", "Telegram"])
  3. y = set(["Radio","Television"])
  4. print( x.difference(y) )
  5. print( y.difference(x) )

请注意,x.difference(y)与 y.difference(x)不同。

子集

要测试集合是否为子集,请使用:

  1. #!/usr/bin/env python
  2. x = set(["a","b","c","d"])
  3. y = set(["c","d"])
  4. print( x.issubset(y) )

超集

要测试集合是否是超集,请执行以下操作:

  1. #!/usr/bin/env python
  2. x = set(["a","b","c","d"])
  3. y = set(["c","d"])
  4. print( x.issuperset(y) )

交集

要测试交集,请使用:

  1. #!/usr/bin/env python
  2. x = set(["a","b","c","d"])
  3. y = set(["c","d"])
  4. print( x.intersection(y) )