Python程序打印列表中唯一值
列表是Python中内置的一种数据结构,其功能类似于动态大小的数组。列表通过将元素放在方括号“[元素1,元素2,……]”中来创建。列表中的元素是有索引的,索引从[0]开始。
列表具有以下特性:
列表是可变的,这意味着可以在创建列表后添加、删除或更改列表中的元素。
列表是有序的,因此向列表中添加新元素不会改变现有元素的顺序。
列表允许输入重复元素,因为每个元素都有唯一的索引。
单个列表可以包含多种数据类型。
现在,让我们看看使用Python程序打印列表中唯一值的各种方法:
使用set()方法获取唯一值
在Python中,set()方法只存储其中存在的每个元素的一个副本。当包含重复元素的列表转换为集合时,只会存储重复值的单个副本。然后可以将集合转换回列表,以创建仅包含唯一值的列表。
示例
以下是使用set()方法从列表中打印唯一值的示例:
def unique_numbers(duplicate): # converting list to set to store unique values unique_numbers_set = set(duplicate) # converting the set back to a list unique_numbers_list = list(unique_numbers_set) return unique_numbers_list duplicate_list = [1, 2, 3, 4, 1, 2, 5, 6, 6, 6] print(unique_numbers(duplicate_list))
输出
以下是上述代码的输出:
[1, 2, 3, 4, 5, 6]
使用list.append()和for循环获取唯一值
Python中的append()方法用于将元素添加到列表的最后一个索引。首先创建一个空列表来存储包含重复值的列表的唯一元素。
for循环与if条件一起使用,以检查第i个位置的元素是否存在于空列表中。如果元素不存在,则将其添加到列表中。因此,只有唯一元素存在,因为如果遇到重复项,if条件将失败,并且不会添加重复元素。
示例
以下是使用list.append()和for循环从列表中获取唯一值的示例:
def unique_fruits(fruit): # create an empty list unique_fruit = [] # for loop to traverse the list elements for traverse in fruit: # check if element not present in list if traverse not in unique_fruit: unique_fruit.append(traverse) # append the unique element return unique_fruit fruits = ['apple', 'orange', 'mango', 'apple', 'orange', 'mango'] print(unique_fruits(fruits))
输出
以下是上述代码的输出
['apple', 'orange', 'mango']
使用numpy.unique()方法获取唯一值
NumPy是支持多维数组对象并主要用于对大型数据集进行高级数学运算以进行科学计算的Python库。
numpy.unique()方法是NumPy库的内置方法,用于按排序顺序返回数组中唯一的值。将重复列表转换为数组后,使用unique()方法删除重复项,然后可以将数组转换回列表。
示例
以下是使用numpy.unique()方法从列表中获取唯一值的示例:
import numpy as np def unique(duplicate): # create an array from the list array = np.array(duplicate) # unique method returns in unique elements in sorted order unique_elements = np.unique(array) # convert the array to list sorted_unique_list = list(unique_elements) return sorted_unique_list duplicate_list = [8, 4, 2, 4, 2, 8, 6, 6] print(unique(duplicate_list))
输出
以下是上述代码的输出:
[2, 4, 6, 8]
广告