Go 切片 函数式 删除指定id的元素

4 min read

函数式编程中,删除指定id的元素可以使用filter和lambda表达式实现。

示例代码如下:

data = [{"id": 1, "name": "Alice"},
        {"id": 2, "name": "Bob"},
        {"id": 3, "name": "Charlie"},
        {"id": 4, "name": "David"}]

def remove_by_id(data, id):
    return list(filter(lambda x: x["id"] != id, data))

new_data = remove_by_id(data, 2)
print(new_data)

这段代码中,将原始数据列表传入remove_by_id函数,并指定需要删除的id。在函数内部,使用filter过滤出不需要删除的元素,然后将结果转换为列表并返回。最终得到的new_data列表中,不包含id为2的元素。