📌  相关文章
📜  Python|划分两个列表(1)

📅  最后修改于: 2023-12-03 15:34:18.383000             🧑  作者: Mango

Python | 划分两个列表

介绍

在开发中,划分两个列表是一个很常见的需求。例如,将一个列表按照某个元素划分成两个列表,或者按照某种条件筛选出其中的一部分元素形成一个新的列表。在 Python 中实现这个功能非常简单,本文将介绍几种常见的实现方式。

代码实现
方法一:使用循环
def split_list_by_element(input_list, element):
    left_list = []
    right_list = []
    for item in input_list:
        if item == element:
            right_list.append(item)
        else:
            left_list.append(item)
    return left_list, right_list
方法二:使用列表推导式
def split_list_by_criteria(input_list, criteria):
    left_list = [item for item in input_list if criteria(item)]
    right_list = [item for item in input_list if not criteria(item)]
    return left_list, right_list
使用示例
方法一使用示例
>>> input_list = [1, 2, 3, 4, 5, 6]
>>> element = 4
>>> left_list, right_list = split_list_by_element(input_list, element)
>>> left_list
[1, 2, 3]
>>> right_list
[4, 5, 6]
方法二使用示例

以将一个列表中的奇数和偶数分开为例:

>>> input_list = [1, 2, 3, 4, 5, 6]
>>> left_list, right_list = split_list_by_criteria(input_list, lambda x: x % 2 == 1)
>>> left_list
[1, 3, 5]
>>> right_list
[2, 4, 6]
总结

以上就是 Python 中划分两个列表的两种常见实现方式。使用循环和使用列表推导式都是非常简单的方式,根据实际情况选择即可。