添加 Set Items
添加 set 项意味着将新元素包含到现有 set 中。在 Python 中,集是可变的,这意味着您可以在创建集后对其进行修改。虽然集合中的元素必须是不可变的(例如整数、字符串或元组),但集合本身可以修改。
您可以使用各种方法将项目添加到集合中,例如 add()、update() 或 set 操作,例如 union (|) 和 set comprehension。
使用 add() 方法添加 Set 项
Python 中的 add() 方法用于将单个元素添加到集合中。它通过插入指定的元素(如果尚不存在)来修改集。如果元素已在集合中,则 add() 方法在集合中没有更改。
语法
以下是将元素添加到集合的语法 -
set.add(obj)
其中,obj 是任何不可变类型的对象。
例在下面的示例中,我们将初始化一个名为 “language” 的空集,并使用 add() 方法向其添加元素 -
# Defining an empty set
language = set()
# Adding elements to the set using add() method
language.add("C")
language.add("C++")
language.add("Java")
language.add("Python")
# Printing the updated set
print("Updated Set:", language)
它将产生以下输出 -
使用 update() 方法添加 Set 项
在 Python 中,set 类的 update() 方法用于将多个元素添加到集合中。它通过将可迭代对象的元素(例如另一个集、列表、元组或字符串)添加到当前集来修改集。如果 iterable 中的元素尚不存在,则这些元素将插入到 set 中。
语法
以下是将元素更新为集合的语法 -
set.update(obj)
其中, obj 是一个集合或序列对象(列表、元组、字符串)。
示例:添加单个 Set 项目
在下面的示例中,我们初始化一个名为 “my_set” 的集合。然后,我们使用 update() 方法将元素 “4” 添加到集合中 -
# Define a set
my_set = {1, 2, 3}
# Adding element to the set
my_set.update([4])
# Print the updated set
print("Updated Set:", my_set)
以下是上述代码的输出 -
示例:将任何 Sequence 对象添加为 Set Items
update() 方法还接受任何序列对象作为参数。
在此示例中,我们首先定义一个集合和一个元组 lang1 和 lang2,其中包含不同的编程语言。然后,我们使用 update() 方法将 “lang2” 中的所有元素添加到 “lang1” -
# Defining a set
lang1 = {"C", "C++", "Java", "Python"}
# Defining a tuple
lang2 = {"PHP", "C#", "Perl"}
lang1.update(lang2)
print (lang1)
获得的结果如下所示 -
例
在这个例子中,一个集合是由一个字符串构造的,另一个字符串被用作 update() 方法的参数 -
set1 = set("Hello")
set1.update("World")
print (set1)
它将产生以下输出 -
使用 Union 运算符添加设置项
在 Python 中,union 运算符 (|) 用于在两个集合之间执行 union 操作。两个集的并集包含任一集中存在的所有不同元素,没有任何重复项。
我们可以通过使用 “|” 运算符或 union() 函数在两个集合之间执行联合操作来使用 union 运算符添加集合项,该函数将两个集合中的元素组合成一个新集合,其中包含任何原始集合中存在的所有唯一元素。
例以下示例使用 union() 方法和 |运算符创建包含原始集中唯一元素的新集 -
# Defining three sets
lang1 = {"C", "C++", "Java", "Python"}
lang2 = {"PHP", "C#", "Perl"}
lang3 = {"SQL", "C#"}
# Performing union operation
combined_set1 = lang1.union(lang2)
combined_set2 = lang2 | lang3
# Print the combined set
print ("Combined Set1:", combined_set1)
print("Combined Set2:", combined_set2)
上述代码的输出如下所示 -
Combined Set2: {'C#', 'Perl', 'PHP', 'SQL'}
例
如果序列对象作为 union() 方法的参数给出,Python 会先自动将其转换为集合,然后执行 union -
lang1 = {"C", "C++", "Java", "Python"}
lang2 = ["PHP", "C#", "Perl"]
lang3 = lang1.union(lang2)
print (lang3)
生成的输出如下 -
使用 Set Comprehension 添加 Set 项
在 Python 中,集合理解是一种使用单行代码创建集合的方法。它允许您通过将表达式应用于可迭代对象中的每个项目(例如列表、元组或范围)来生成新集,并可选择包含用于筛选元素的条件。
我们可以使用集合推导来添加集合项,方法是迭代一个可迭代对象,将表达式应用于每个元素,并将推导表达式括在大括号 {} 中,以生成一个包含应用于每个元素的表达式结果的新集合。
例在下面的示例中,我们定义了一个整数列表,然后使用集合推导来生成一个包含这些整数的平方的集合 -
# Defining a list containing integers
numbers = [1, 2, 3, 4, 5]
# Creating a set containing squares of numbers using set comprehension
squares_set = {num ** 2 for num in numbers}
# Printing the set containing squares of numbers
print("Squares Set:", squares_set)
以下是上述代码的输出 -