迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中过滤元组(Tuple)列表

作者:迹忆客 最近更新:2022/09/13 浏览次数:

在 Python 中过滤元组列表:

  1. 使用列表推导来迭代列表。
  2. 从列表推导中返回一个条件。
  3. 新列表将仅包含满足条件的元组。
# ✅ 使用列表推导过滤元组列表

list_of_tuples = [('Alice', 1), ('Bob', 2), ('Carl', 3), ('Dean', 4)]

filtered_list = [tup for tup in list_of_tuples if tup[1] > 2]

# 👇️ [('Carl', 3), ('Dean', 4)]
print(filtered_list)

# -------------------------------------------------------------

# ✅ 使用 `filter()` 函数过滤元组列表

filtered_list_2 = list(
    filter(
        lambda tup: tup[1] > 2,
        list_of_tuples
    )
)

# 👇️ [('Carl', 3), ('Dean', 4)]
print(filtered_list_2)

上述代码运行结果如下

python 过滤元组

我们使用列表推导来过滤元组列表。

列表推导用于对每个元素执行一些操作,或者选择满足条件的元素子集。

在每次迭代中,我们检查当前元组的第二项(索引 1)是否大于 2 并返回结果。

新列表仅包含条件返回真值的元组。

或者,我们可以使用 filter() 函数。

在 Python 中过滤元组列表:

  1. 使用 filter() 函数过滤列表。
  2. filter 函数返回一个包含结果的迭代器。
  3. 将过滤器对象传递给 list() 类以将其转换为列表。
list_of_tuples = [('Alice', 1), ('Bob', 2), ('Carl', 3), ('Dean', 4)]


filtered_list_2 = list(
    filter(
        lambda tup: tup[1] > 2,
        list_of_tuples
    )
)

# 👇️ [('Carl', 3), ('Dean', 4)]
print(filtered_list_2)

filter 函数将一个函数和一个迭代器作为参数,并从迭代器的元素构造一个迭代器,函数为其返回一个真值。

filter 函数返回一个过滤器对象,因此我们必须将过滤器对象传递给 list() 类以将其转换为列表。

lambda 函数被列表中的每个元组调用,检查元组中的第二项是否大于 2 并返回结果。

最终列表仅包含满足条件的元组。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 中的 Pandas 插入方法

发布时间:2024/04/23 浏览次数:112 分类:Python

本教程介绍了如何在 Pandas DataFrame 中使用 insert 方法在 DataFrame 中插入一列。

Pandas 重命名多个列

发布时间:2024/04/22 浏览次数:199 分类:Python

本教程演示了如何使用 Pandas 重命名数据框中的多个列。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便