【问题标题】:Python Combine Repeating ElementsPython 组合重复元素
【发布时间】:2023-04-02 21:48:02
【问题描述】:

我有一个包含一些重复元素的字符串列表,我想将这些元素组合成一个较短的列表。

原始列表内容如下所示:

lst = [['0.1', '0', 'RC', '100'],
        ['0.2', '10', 'RC', '100'],
        ['0.3', '5', 'HC', '20'],
        ['0.4', '5', 'HC', '20'],
        ['0.5', '5', 'HC', '20'],
        ['0.6', '5', 'HC', '20'],
        ['0.7', '5', 'HC', '20'],
        ['0.8', '5', 'HC', '20'],
        ['0.9', '10', 'RC', '100'],
        ['1.0', '0', 'RC', '100']]

通过函数运行后会变成:

lst = [['0.1', '0', 'RC', '100'],
        ['0.2', '10', 'RC', '100'],
        ['0.3', '5', 'HC', '20'],
        ['0.9', '10', 'RC', '100'],
        ['1.0', '0', 'RC', '100']]

列表将始终具有这种一般结构,所以基本上我想根据最后 3 列是否完全相同来组合列表。

我希望它是一个可调用的函数,所以它看起来像这样:

def combine_list(lst):
    if sublist[1:3] == next_sublist[1:3]:
        let.remove(next_sublist)

我对此的初步研究显示了许多基于索引删除子列表的方法,但这不一定事先知道。我还找到了 re 模块,但是我从未使用过它并且不确定如何实现它。提前谢谢你

【问题讨论】:

    标签:
    python
    string
    list
    sorting