萧潇墨 2020-04-10 12:46 采纳率: 66.7%
浏览 672
已采纳

Python中如何对数组取并集交集

Python对数组取并集倒是挺简单的,但是数组中的元素不是像1234这样简单的数据,数组中的元素是字典,然后我怎么根据数组中字典的其中一个key来取并集

代码如下  怎么根据title取并集
myarry = [
    dict(
        title="11",
        sort=1
    ),
    dict(
        title="22",
        sort=2
    ),
    dict(
        title="33",
        sort=3
    ),
    dict(
        title="44",
        sort=4
    ),
    dict(
        title="55",
        sort=5
    ),
    dict(
        title="66",
        sort=6
    )
]
myarrys = [
    dict(
        title="55",
        sort=11
    ),
    dict(
        title="66",
        sort=22
    ),
    dict(
        title="77",
        sort=33
    ),
    dict(
        title="88",
        sort=44
    ),
    dict(
        title="99",
        sort=55
    ),
    dict(
        title="00",
        sort=66
    )
]
a=list(set(myarry).union(set(myarrys)))
print(a)
  • 写回答

2条回答 默认 最新

  • eli261 2020-04-10 13:07
    关注
    #!/bin/python3
    #coding: utf-8
    
    myarry = [
        dict(
            title="11",
            sort=1
        ),
        dict(
            title="22",
            sort=2
        ),
        dict(
            title="33",
            sort=3
        ),
        dict(
            title="44",
            sort=4
        ),
        dict(
            title="55",
            sort=5
        ),
        dict(
            title="66",
            sort=6
        )
    ]
    
    myarrys = [
        dict(
            title="55",
            sort=11
        ),
        dict(
            title="66",
            sort=22
        ),
        dict(
            title="77",
            sort=33
        ),
        dict(
            title="88",
            sort=44
        ),
        dict(
            title="99",
            sort=55
        ),
        dict(
            title="00",
            sort=66
        )
    ]
    
    a=list({i['title']:i for i in (myarrys + myarry)}.values())
    
    print(a)
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?