• python字典键或值去重


    from fuzzywuzzy import fuzz, process
    
    
    a = {'嫦娥四号探测器是用哪个型号的火箭发射的?': ['长征3B'], '嫦娥四号探测器是在我国【】发射成功的。': ['西昌发射基地']}
    b = {'嫦娥四号探测器是在我国【 】发射成功的。': ['B、西昌发射基地'], '嫦娥四号探测器是用【 】火箭发射的。': ['B、长征3B']}
    res = {**a, **b}
    c = dict(**res)
    n = 0
    print(c)
    print(len(res))
    for k, v in res.items():
        c.pop(k)
        if fuzz.partial_ratio(k, c) > 90:
            continue
        print(k, v)
        n+=1
    print(n)

    将多个字典合并到一个,但是变量a2和变量b1其实是相同的因为多了一个空格所以不会被合并,如果用

    in有些局限性,in需要两个字符串完全相同才会返回True,所以需要模糊匹配去重,上面是代码,

    可以根据自身要求修改匹配度,下面是执行结果

    {'嫦娥四号探测器是用哪个型号的火箭发射的?': ['长征3B'], '嫦娥四号探测器是在我国【】发射成功的。': ['西昌发射基地'], '嫦娥四号探测器是在我国【 】发射成功的。': ['B、西昌发射基地'], '嫦娥四号探测器是用【 】火箭发射的。': ['B、长征3B']}
    4
    嫦娥四号探测器是用哪个型号的火箭发射的? ['长征3B']
    嫦娥四号探测器是在我国【 】发射成功的。 ['B、西昌发射基地']
    嫦娥四号探测器是用【 】火箭发射的。 ['B、长征3B']
    3

      如果对你有帮助的话可以一键三连~

  • 相关阅读:
    自定义异常
    java代码中正则表达式
    mybatis中代码如何实现批量添加
    List集合的三种遍历方式的效率问题
    4种方式配置不同作用域的jvm的堆栈内存!
    如何在Eclipse里修改端口
    如何用Eclipse打jar包
    用explain来解析sql语句,然后建立正确的索引
    quartz简单demo,教你最快使用quartz
    log4j.properties配置详解
  • 原文地址:https://www.cnblogs.com/1314h/p/13581697.html
Copyright © 2020-2023  润新知