Python – 删除指定索引元素后的列表打印
Python 语言是处理数据最强大的编程语言之一。列表是 Python 中多种数据结构类型的一种。列表可以容纳不同类型的数据对象,例如整数、字符串甚至浮点数。一旦赋值给列表的值之后,就不能再更改。列表中的元素使用索引值来标识,本文将讨论通过指定索引删除元素的方法。
删除指定索引元素后的列表打印
列表由元素组成,索引值从 0 开始到元素数量减一。从列表中删除元素可以用图示来解释。删除元素有多种方法。下面的列表包含 7 个元素,第一行表示元素的索引值,第二行包含元素的值。
删除索引“3”处的元素
要删除元素,我们需要找到列表数组的第三个索引,即“56”。删除该元素后,新的列表如下所示:
方法
方法 1 - 使用 pop() 函数
方法 2 - 使用 numpy 模块
方法 3 - 使用 reduce 方法
方法 1:使用 pop() 函数删除指定索引元素后打印列表的 Python 程序
上述方法只需使用 pop() 函数即可从列表中删除元素。下面的代码可以使用 del() 函数替换 pop() 函数来删除元素。对于 remove() 方法,通过直接将元素作为函数参数来删除元素。
算法
步骤 1 - 创建一个列表来同时保存整数、字符串和浮点值,并将其赋值给名为 list1 的变量。
步骤 2 - 使用 pop() 函数删除索引为 2 和 0 的元素。
步骤 3 - 最后,print 函数返回新的列表。
示例
#initializing the list with set of elements list1 = [10, 20, 30, 'Hello ', 67.9] #The pop function will simply remove the element for the mentioned index value #index value of 2 and 0 needs to be removed list1.pop(2) list1.pop(0) #print function will return the list after removing the elements. print(list1)
输出
[20, 'Hello ', 67.9]
方法 2:使用 numpy 模块删除指定索引元素后打印列表的 Python 程序
当数据集较小时,可以使用简单的方法删除元素;当数据集较大时,我们可以切换到相应模块的内置函数。在本例中,使用 numpy 模块。
算法
步骤 1 - 声明用于删除元素的必需模块 numpy 为 “np”。
步骤 2 - 创建包含整数、字符串和浮点数的数据结构列表。
步骤 3 - 要使用 numpy 模块删除元素,需要将给定的列表转换为 numpy 数组。
步骤 4 - 将转换后的 numpy 数组存储在名为“val”的变量中。
步骤 5 - 使用函数 np.delete() 在指定索引值的情况下从 numpy 数组中删除元素。
步骤 6 - 然后将上述函数声明为新的变量并打印新的列表。
示例
#importing the module as np import numpy as np #Creating a list to hold values of different data types list1 = [10, 20, 30, 'Hello ', 67.9] #To convert the list data structure to numpy array and stored in val val = np.array(list1) #The given index value elements are removed. #The delete function has two parameters newlist = np.delete(val, [0,2]) #Then finally returns the new list print(newlist)
输出
['20' 'Hello ' '67.9']
方法 3:使用 reduce 方法删除指定索引元素后打印列表的 Python 程序
使用 functools 模块中 reduce 函数从列表中删除元素。
算法
步骤 1 - 从 functools 模块导入 reduce 方法。
步骤 2 - 创建一个包含元素的列表。
步骤 3 - 使用 lambda 函数,这是一个无需定义的匿名函数。
步骤 4 - print 语句返回删除索引 0 和 2 元素后的列表。
示例
#importing the module from functools import reduce #Creating a list to hold values of different data types list1 = [10, 20, 30, 'Hello ', 67.9] #The elements removed using reduce method with key parameters. new_list = reduce(lambda a,b: a+[b] if list1.index(b) not in [0,2] else a, list1, []) #Then finally returns the new list print(new_list)
输出
[20, 'Hello ', 67.9]
结论
组织机构必须处理大型数据集,因此删除不需要的元素可以提高效率并简化工作。借助 Python 语言,可以使用 del、remove、pop、numpy 模块和 functools 模块从列表中删除元素。