【问题标题】:compare two list and set zero for not exist value比较两个列表并为不存在的值设置零
【发布时间】:2022-11-28 00:22:39
【问题描述】:

我想将 lst2 与 lst 进行比较,并将不存在的值设置为零

lst = ['IDP','Remote.CMD.Shell','log4j']

lst2 = ['IDP']

我想在例如循环中这样输出

{
IDP:1,
Remote.CMD.Shell:0,
log4j:0
}
{
IDP:0,
Remote.CMD.Shell:0,
log4j:0
}
{
IDP:0,
Remote.CMD.Shell:0,
log4j:0
}

如果有人能帮助我,我会很高兴

【问题讨论】:

    标签: python python-3.x list compare


    【解决方案1】:

    这是我如何实现这一目标

    首先你可以创建一个新的字典,然后操作里面的数据

    lst = ['IDP','Remote.CMD.Shell','log4j']
    
    lst2 = ['IDP']
    
    result = {}
    
    for i in lst:
        result[i] = 0
    
    # if one of result keys is in lst2, set the value to 1
    for i in lst2:
        if i in result:
            result[i] = 1
        
    print(result)
    

    结果: {'IDP': 1, 'Remote.CMD.Shell': 0, 'log4j': 0}

    【讨论】:

      【解决方案2】:

      这应该有效:

      result = {key : 1 if key in lst2 else 0 for key in lst}
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-10-24
        • 1970-01-01
        • 1970-01-01
        • 2021-01-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多