Python - 添加设置项


即使集合仅将不可变的对象组合在一起,集合本身也是可变的。我们可以通过以下任何一种方式在其中添加新项目 -

add() 方法

set 类中的 add() 方法添加一个新元素。如果该元素已存在于集合中,则集合中不会发生任何变化。

句法

set.add(obj)

参数

  • obj - 任何不可变类型的对象。

例子

看一下下面的例子 -

lang1 = {"C", "C++", "Java", "Python"}
lang1.add("Golang")
print (lang1)

它将产生以下输出-

{'Python', 'C', 'Golang', 'C++', 'Java'}

update() 方法

set 类的 update() 方法包括作为参数给出的集合的项目。如果另一组中的元素具有一个或多个已存在的项目,则不会包含它们。

句法

set.update(obj)

参数

  • obj - 集合或序列对象(列表、元组、字符串)

例子

以下示例显示了 update() 方法的工作原理 -

lang1 = {"C", "C++", "Java", "Python"}
lang2 = {"PHP", "C#", "Perl"}
lang1.update(lang2)
print (lang1)

它将产生以下输出-

{'Python', 'Java', 'C', 'C#', 'PHP', 'Perl', 'C++'}

例子

update() 方法还接受任何序列对象作为参数。这里,元组是 update() 方法的参数。

lang1 = {"C", "C++", "Java", "Python"}
lang2 = ("PHP", "C#", "Perl")
lang1.update(lang2)
print (lang1)

它将产生以下输出-

{'Java', 'Perl', 'Python', 'C++', 'C#', 'C', 'PHP'}

例子

在此示例中,集合是由字符串构造的,另一个字符串用作 update() 方法的参数。

set1 = set("Hello")
set1.update("World")
print (set1)

它将产生以下输出-

{'H', 'r', 'o', 'd', 'W', 'l', 'e'}

union() 方法

set 类的 union() 方法也组合了两个集合中的唯一项,但它返回一个新的集合对象。

句法

set.union(obj)

参数

  • obj - 集合或序列对象(列表、元组、字符串)

返回值

union()方法返回一个集合对象

例子

以下示例显示了 union() 方法的工作原理 -

lang1 = {"C", "C++", "Java", "Python"}
lang2 = {"PHP", "C#", "Perl"}
lang3 = lang1.union(lang2)
print (lang3)

它将产生以下输出-

{'C#', 'Java', 'Perl', 'C++', 'PHP', 'Python', 'C'}

例子

如果将序列对象作为 union() 方法的参数给出,Python 会自动将其首先转换为集合,然后执行并集。

lang1 = {"C", "C++", "Java", "Python"}
lang2 = ["PHP", "C#", "Perl"]
lang3 = lang1.union(lang2)
print (lang3)

它将产生以下输出-

{'PHP', 'C#', 'Python', 'C', 'Java', 'C++', 'Perl'}

例子

在此示例中,集合是由字符串构造的,另一个字符串用作 union() 方法的参数。

set1 = set("Hello")
set2 = set1.union("World")
print (set2)

它将产生以下输出-

{'e', 'H', 'r', 'd', 'W', 'o', 'l'}