使用 Python 移除大于特定值的列表元素

使用 Python 移除大于特定值的列表元素

在这篇文章中,我们将学习如何在 Python 中从一个列表中移除大于特定值的元素。

使用的方法

下面是用于完成这项任务的各种方法

  • 使用 remove() 方法

  • 使用List Comprehension

  • 使用 filter() 方法和 lambda 函数

方法1:使用remove()方法

remove() 函数(从列表中删除第一个出现的元素)

算法(步骤)

以下是执行所需任务时需要遵循的算法/步骤。-

  • 创建一个变量来存储 输入列表。

  • 创建另一个变量来存储另一个 输入值。

  • 使用 for循环 来遍历输入列表中的每个元素。

  • 使用 if条件 语句,检查当前元素是否大于指定的输入值。

  • 使用to remove()函数,如果条件为真,将当前元素作为参数传递给它,将其从列表中删除。

  • 打印移除大于指定输入值的元素后的结果列表。

例子

下面的程序使用 remove() 函数从列表中移除大于指定输入值的元素—。

# input list
inputList = [45, 150, 20, 90, 15, 55, 12, 75]
# Printing the given list
print("The Given list is:", inputList)
# input value
inputValue = 50
# iterarting through the list
for i in inputList:
   # checking whether the current element is greater than the input value
   if i > inputValue:
      # removing that current element from the list if the condition is true
      inputList.remove(i)
# printing the resultant list after removing elements larger than 50
print("Removing elements larger than 50 from the list:\n", inputList)

输出

在执行时,上述程序将产生以下输出:

The Given list is: [45, 150, 20, 90, 15, 55, 12, 75]
Removing elements larger than 50 from the list:
 [45, 20, 15, 12]

方法2:使用列表理解法

列表理解

当你想根据现有列表的值建立一个新的列表时,列表理解提供了一个更短/更简洁的语法。

例子

下面的程序使用列表理解从输入列表中删除大于指定输入值的元素—-。

# input list
inputList = [45, 150, 20, 90, 15, 55, 12, 75]
# Printing the given list
print("The Given list is:", inputList)

# input value
inputValue = 50

# removing elements from a list larger than 50
# by traversing through the list and storing elements
# that are having a value less than or equal to the given input value
resultList = [k for k in inputList if k <= inputValue]

# printing the resultant list
print("Removing elements larger than 50 from the list:", resultList)

输出

在执行时,上述程序将产生以下输出:

The Given list is: [45, 150, 20, 90, 15, 55, 12, 75]
Removing elements larger than 50 from the list: [45, 20, 15, 12]

方法3:使用filter()方法和lambda函数

兰姆达函数

Lambda函数,通常被称为 “匿名函数”, 与普通的Python函数相同,只是它可以 在没有名字的情况下定义。 def 关键字用于定义普通函数,而 lambda 关键字用于定义匿名函数。然而,它们被限制在一行表达式中。它们和正则函数一样,可以接受几个参数。

语法

lambda arguments: expression
  • 这个函数接受任何数量的输入,但只评估和返回一个表达式。

  • Lambda函数可以用在需要函数对象的地方。

  • 你必须记住,Lambda函数在语法上只限于一个表达式。

算法(步骤)

以下是执行所需任务时需要遵循的算法/步骤。-

  • 使用lambda函数检查iterable的每个元素。

  • 使用filter()函数过滤所有数值小于给定输入值的元素。

  • filter()函数 – 使用一个函数过滤指定的序列,该函数确定序列中的每个元素是真还是假。

  • 使用list()函数将这个过滤器对象转换为一个列表。

  • 在删除大于指定输入值的元素后,打印出结果列表。

例子

下面的程序使用 filter() 和 lambda() 函数 &miinus 从输入列表中删除大于指定输入值的元素。

# input list
inputList = [45, 150, 20, 90, 15, 55, 12, 75]
print("The Given list is:", inputList)
# input value
inputValue = 50

# Filtering list objects that are having value
# less than or equal to the given input Value
filteredObject = filter(lambda k: k <= inputValue, inputList)

# Convert the filter object to a list using the list() function
resultList = list(filteredObject)

# printing the resultant list after removing elements larger than 50
print("Removing elements larger than 50 from the list:\n", resultList)

输出

在执行时,上述程序将产生以下输出:

The Given list is: [45, 150, 20, 90, 15, 55, 12, 75]
Removing elements larger than 50 from the list:
 [45, 20, 15, 12]

方法4:使用for循环和append()函数

例子

下面的程序使用for循环和append()函数从输入列表中删除大于指定输入值的元素。

# input list
inputList = [45, 150, 20, 90, 15, 55, 12, 75]
print("The Given list is:", inputList)
# input value
inputValue = 50
# Creating an empty list to store the result
resultList = []
# iterarting through the list
for i in inputList:
   # checking whether the current element is less than or equal to the input value
   if i <= inputValue:
      # add this element to the result list
      resultList.append(i)
# printing the resultant list after removing elements larger than 50
print("Removing elements larger than 50 from the list:\n", resultList)

输出

在执行时,上述程序将产生以下输出:

The Given list is: [45, 150, 20, 90, 15, 55, 12, 75]
Removing elements larger than 50 from the list:
 [45, 20, 15, 12]

结论

在这篇文章中,我们学习了 4 种不同的 Python 方法来删除大于给定值的列表元素。此外,我们学习了如何使用 lambda 和 filter() 函数来根据条件过滤列表。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Python 教程