Python列表嵌套字典的时候,如果要删除列表中其中一个字典要如何操作

如果要删除列表中其中一个字典要操作如下

第一种方法

1.1

复制name_list=[{"name":"张三","age":18},{"name":"李四","age":22},{"name":"王五","age":26}]
name="王五"
name= input("请输入你想删除的名字:\t")
names=[item for item in name_list if not item["name"] ==name]
print(names)

1.2

复制def item_name():
    list = [{
        "propertyId": 3424,
        "name": "尺码",
        "value": "36",
        "propertyValueId": 20206750,
        "level": 2,
        "customValue": "",
        "showValue": 1,
        "sort": 0,
        "definitionId": 6
    }, {
        "propertyId": 4664,
        "name": "版本",
        "value": "D宽",
        "propertyValueId": 20206749,
        "level": 1,
        "customValue": "",
        "showValue": 1,
        "sort": 1,
        "definitionId": 12
    }, {
        "propertyId": 3424,
        "name": "尺码",
        "value": "37",
        "propertyValueId": 20206751,
        "level": 2,
        "customValue": "",
        "showValue": 1,
        "sort": 1,
        "definitionId": 6
    }]
    name = "版本" or "D宽"
    item_list = [item for item in list if not item["name"] == name or item["value"] == name]
    print("item_list", item_list)
    items = []
    for sale in item_list:
        sizename = sale.get("name")
        size = sale.get("value")
        ValueId = sale.get("propertyValueId")
        propertyId = sale.get("propertyId")

        sku_info = {
            "sizename": sizename,
            "size": size,
            "ValueId": ValueId,
            "propertyId": propertyId,
        }
        items.append(sku_info)
    
    print(items)
    
if __name__ == '__main__':
    item_name()

第二种方法

复制def item_name():
    list = [{
        "propertyId": 3424,
        "name": "尺码",
        "value": "36",
        "propertyValueId": 20206750,
        "level": 2,
        "customValue": "",
        "showValue": 1,
        "sort": 0,
        "definitionId": 6
    }, {
        "propertyId": 4664,
        "name": "版本",
        "value": "D宽",
        "propertyValueId": 20206749,
        "level": 1,
        "customValue": "",
        "showValue": 1,
        "sort": 1,
        "definitionId": 12
    }, {
        "propertyId": 3424,
        "name": "尺码",
        "value": "37",
        "propertyValueId": 20206751,
        "level": 2,
        "customValue": "",
        "showValue": 1,
        "sort": 1,
        "definitionId": 6
    }]

    # name = "版本" or "D宽"
    # item_list = [item for item in list if not item["name"] == name or item["value"] == name]
    # print("item_list", item_list)
    items = []
    for sale in list:
        size = sale.get("value")
        sizename = sale.get("name")
        if "版本" == sizename:
            continue
        # sizename = sale.get("name")
        # size = sale.get("value")
        ValueId = sale.get("propertyValueId")
        propertyId = sale.get("propertyId")

        sku_info = {
            "sizename": sizename,
            "size": size,
            "ValueId": ValueId,
            "propertyId": propertyId,
        }
        items.append(sku_info)

    print(items)


if __name__ == '__main__':
    item_name()


如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载!
posted @   莫贞俊晗  阅读(4186)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示