Python 如何将列表转换为集合
Sets 和 Lists 是Python中包含一组数据元素的数据结构。然而,这两个数据结构也有一些显著的区别。具体而言,列表执行了一些数学操作,用于搜索特定元素,尤其是重复的元素和管理数据。相反,集合有助于执行各种函数,如并集和交集。在Python中,我们需要完成列表到集合的转换的原因有很多,而这可以通过一个简单的函数来实现。
在开始之前,让我们了解一些关于列表和集合的概念。
Python中的列表
列表 在Python中用于在单个变量中存储多个数据元素。列表是Python中四种内置数据类型之一,用于积累数据集。其余三种包括集合、元组和字典,所有这些数据类型具有不同的功能和用法。
我们可以使用方括号创建列表。让我们考虑以下示例来了解列表。
示例:
# Creating a list of eight elements
mylist = ["Apple", "Mango", "Banana", "Orange", "Guava", "Mango", "Strawberry", "Grapes"]
print(mylist)
输出:
['Apple', 'Mango', 'Banana', 'Orange', 'Guava', 'Mango', 'Strawberry', 'Grapes']
解释:
在上面的示例中,我们使用 方括号 将元素括起来创建了一个包含八个元素的列表。然后我们打印了这个列表给用户看。
此外,我们还可以观察到列表中有一个重复的元素,这意味着列表元素是有序的、可更改的,并且允许重复的值。列表元素的索引从 [0] 开始,表示第一个元素, [1] 表示第二个元素,依此类推。
Python中的集合
集合 也可以用来在一个变量中存储多个元素。集合是Python中的四种核心数据类型之一,用于存储数据的集合。集合是一个无序且无索引的集合,使用花括号来表示。
让我们来看一个示例来理解集合。
示例:
# Creating a set of eight elements
myset = {"Apple", "Mango", "Banana", "Orange", "Guava", "Pineapple", "Strawberry", "Grapes"}
print(myset)
输出:
{'Strawberry', 'Mango', 'Grapes', 'Pineapple', 'Apple', 'Orange', 'Guava', 'Banana'}
**解释: **
在上面的示例中,我们使用 花括号 将元素括起来创建了一个包含八个元素的集合。然后我们打印了这个集合给用户看。
注意:集合是一个无序的数据集合。因此,我们无法确定元素的顺序。
理解列表和集合的区别
Python中集合和列表的最大区别在于,集合只存储唯一的元素,而列表可以包含相同的元素。例如,假设我们有一个数学考试成绩列表定义为 “marks = [25, 30, 21, 19, 25, 27, 25, 17, 23, 20]” ,列表会显示给用户每个值;然而,当我们将列表转换为集合时,它会删除重复的元素,只保留 {25, 30, 21, 19, 25, 27, 17, 23, 20} 。
另一个重要的区别是,集合使用花括号,而列表使用方括号。
注意:事情可能会变得混淆,因为Python中的字典也使用花括号。然而,每个数据元素由值本身和一个分隔”键”的冒号组成。
需要记住的一点是,我们可以将整数,字符串,浮点数或其他对象作为集合或列表的一部分,并将它们混合在同一个列表或集合中。因此,类似于在Python中有一个整数集合,我们也可以创建一个字符串集合等等。
将列表转换为集合
在Python中,将列表转换为集合的过程非常简单。首先,我们必须定义一个列表。例如,假设我们有一个名字列表定义为 the_names = [“George”, “Josh”, “James”, “Mark”, “Carlo”, “James”, “Andy”, “Sara”, “Andy”, “Victor”] 。
我们可以使用 set() 命令将列表转换为集合,其中我们需要在括号中插入要转换的列表名称。因此,在上述情况下,我们需要输入 set(the_names) 来将列表中的名字转换为集合。此外,我们还可以将此功能赋值给一个变量,如 “the_unique_names” ,并将结果显示给用户。我们还可以使用 print(set(the_names)) 函数使其更高效。
让我们使用以下示例来理解:
示例:
# Creating a list of ten data elements
the_names = ["George", "Josh", "James", "Mark", "Carlo", "James", "Andy", "Sara", "Andy", "Victor"]
# Converting the above list to the set
the_unique_names = set( the_names)
# Printing the set to the users
print( the_unique_names)
输出:
{'Victor', 'George', 'Josh', 'Andy', 'Mark', 'Carlo', 'Sara', 'James'}
说明:
在上面的示例中,我们定义了一个包含十个数据元素的列表 the_names 。然后我们定义了一个变量 the_unique_names ,使用 set() 命令将列表转换为集合。最后,我们打印了该集合。
结果是,列表成功转换为集合。我们还可以观察到,像James和Andy这样的名字只被打印了一次。